📄 mtthread.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 + -