⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mtthread.h

📁 一个手机通信的源代码 一个手机通信的源代码一个手机通信的源代码
💻 H
字号:
// MtThread.h: interface for the CMtThread class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MTTHREAD_H__44A21989_27BD_4A3E_A9EC_D02154D34F5F__INCLUDED_)
#define AFX_MTTHREAD_H__44A21989_27BD_4A3E_A9EC_D02154D34F5F__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "MSMQThread.h"
#import "mqoa.dll" no_namespace
#include "Msmqerr.h"
//#include "WorkLog.h"
class CServiceAction;
class CMtSocket;
class CMtThread : public CMSMQThread  
{
private:
	int m_SequenceID;
	int m_BeginSequence;
	typedef struct StructSendPack{
     	int m_PkTotal;//发多包时统计总包长
	    int m_PkNumber;//包序号
	    int m_SendLength;
		int m_MsgFmt;
		CString m_csSendType;
        CString m_csFeetype;
		CString m_csFeeCode;
		CString m_GivenValue;
		CString m_csFeePhone;
		CString m_csDestPhone;
		CString m_csServiceType;
	    CString m_csContent;
		CString m_csGameID;
		CString m_csChildNum;
		int m_Tppid;
		int m_Tpudhi;

		CString m_csAreaCode;
		CString m_csUserType;
		
        BYTE m_BinaryBuf[2000];
		int m_Contype;
		__int64 m_MsgID;
		CString m_LinkId;
		CString m_MoToMtFlag;
		CString m_RegistDeliver;

	}StructSendPack;
	BOOL m_bSavereport;
	StructSendPack m_SendPackage;
	int m_ConnectStatus;
	UINT m_ReconnectTimes;
	int m_ResendTimes;
    BOOL m_ReSend;//自动重发
	void Reconnect();
	long m_BinaryOutLen;
	void BeginSubmit();
	UINT m_WaitLongSubmitRsp;//等待长包的SubmitRsp
	UINT m_SubmitMsgs;
	UINT m_ActiveTest;                //发送连路检测包事件
	UINT m_NotWaitActiveRsp;          //未等待ACtiveTestRsp
	UINT m_ReconnectEvent;            //自动重连
	UINT m_EventNotReceiveConnectRsp; //没收到CmppConnectRsp;
	UINT m_EventNotReceiveSubmitRsp;  //没收到SubmitRsp;
	UINT m_EventNotReceiveTerminalRsp;//没收到TerminalRsp;
	UINT m_EventKeepActive;
	CString m_TempLabel;
	VARIANT m_TempBody;
	BOOL SendBinary(LPCTSTR FromPhone, LPCTSTR ReceivePhone, LPCTSTR ChargePhone, LPCTSTR IcpID, LPCTSTR ServiceType, LPCTSTR FeeType, LPCTSTR FeeValue, BYTE* BinaryBuf,int BinaryLen,int &MsgFmt,int &Tppid,int &Tpudhi,LPCTSTR LinkID);

	BOOL Send(CString &SendType,LPCTSTR FromPhone, LPCTSTR ReceivePhone, LPCTSTR ChargePhone, LPCTSTR IcpID, LPCTSTR ServiceType, LPCTSTR FeeType, LPCTSTR FeeValue, LPCTSTR MessageContent,int& MsgFmt,LPCTSTR LinkID,LPCTSTR MoToMtFlag, LPCTSTR RegistDeliver);
	
	CString GetSubString(CString csIn, int iWhich);
	CString m_ChildType;
	CString m_MsgType;
	void DisConnect();
	BOOL Connect();
	CMtSocket* m_pMtSocket;
	CString m_csRemoteIP;

	UINT m_RemotePort;
	CString m_csServicenumber;

	CString m_csUserName;
    BOOL InitQueue(); 
    IMSMQQueuePtr m_QueuePtr;
	IMSMQQueuePtr m_ReportQueuePtr;
    IMSMQQueueInfoPtr m_QueueInfoPtr;
    IMSMQMessagePtr m_MessagePtr;
	IMSMQMessagePtr m_ReportMessage;
    CString m_OutQueuePath;
	CString m_ReportQueuePath;
	BOOL SubmitShortMessage();
	void SaveReportToQueue(CString& csMsgID);
	BOOL ConnectIsmg();
public:
	//-------------------------------
	int m_ProvinceIndex;
	BOOL SubmitGivenMoney(CString &csDestMobile, CString &csContent, CString &csFeePhone, CString &csFeetype, CString &csFeeValue, CString &csServiceType,CString& GivenValue);
	void SaveWrongPackage();
	BOOL SubmitSMCMoney(CString &csDestMobile, CString &csContent, CString &csFeePhone, CString &csFeetype, CString &csFeeValue, CString &csServiceType);
	int GetSequenceID();
	CString m_Province;
	void SaveReport(BOOL bSavereport);
	BOOL SubmitLongBinary();
    CString m_csICPID;
	CString m_csPassword;
	void GetConnectStatus(CString& csConnectstatus);
	
	BOOL m_bBeginReadQueue;
	
	void OnReceiveWrongMsg(CString csCommandID);
	void GetSubmitMsgs(UINT& Msgs,UINT& ReconnectTimes);
	void DeleteSocket();
	
	BOOL OnSubmitStatus(int Status,unsigned char Result,char* MsgID);

	void ReportNormalInfo(CString MsgType, CString ChildType, CString Content);

	void InitConnectParam(CString& RemoteIP,UINT& RemotePort,CString&  ICPID, CString& SourceNode,CString& UserName,CString& Password,CString&  ServiceNumber,int BeginSequenceNum);
	virtual void ExitThread();
	virtual void OnTimer(UINT EventID);
	virtual void InitChildClass();
	virtual void SingleStep();
	virtual void ReportError(CString &csErrorInfo);
	CMtThread(CString OutQueuePath,CString ReportQueuePath,CServiceAction* pParentAction,CString& csProvince);
	virtual ~CMtThread();
	CServiceAction* m_pParentAction;

protected:
	CString m_csSourceNode;
};

#endif // !defined(AFX_MTTHREAD_H__44A21989_27BD_4A3E_A9EC_D02154D34F5F__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -