FXSend/StdAfx.h

414 lines
9.7 KiB
C
Raw Permalink Normal View History

2025-02-28 17:05:50 +08:00
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#if !defined(AFX_STDAFX_H__F29B1587_92A1_4DB8_A659_2AE865E3FCFE__INCLUDED_)
#define AFX_STDAFX_H__F29B1587_92A1_4DB8_A659_2AE865E3FCFE__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#define SOAP_DEBUG
//#ifdef DEBUG_CHECK_MEM
#ifdef DEBUG_CHECK_MEM
#ifdef _DEBUG
#define CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
#endif
#endif
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afxdisp.h> // MFC Automation classes
#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
#include <afxsock.h> // MFC socket extensions
#include <Atlbase.h>
#include <comdef.h>
#include <AfxTempl.h>
#include <afxmt.h>
#include <afxinet.h>
#pragma comment(lib, "wininet.lib")
#include "..\..\public\LuTool.h"
#include "..\..\public\des\Des.h"
#include "..\..\public\ado\ado.h"
#include "..\..\public\CorpSms.h"
#include "..\..\public\SendPub.h"
#include "..\..\public\CMarkup\Markup.h"
#include "..\..\public\AutoBuffer\AutoBuffer.h"
#include "..\..\public\AutoCoInitializeEx\AutoCoInitializeEx.h"
#include "..\..\public\ProxySocket\CBase64Coding.hpp"
#include "..\..\public\zip\zip.h"
#include "..\..\public\AutoCoInitializeEx\AutoCoInitializeEx.h"
#include "..\..\public\LuGBBIG5.h"
#include "..\..\public\SqlPool\SqlPool.h"
#include "ImApi\ImApi.h" //masapi
#include ".\Cmpp\Cmpp.h"
#include ".\Cmpp3\Cmpp3.h"
#include ".\Sgip\Sgip.h"
#include ".\Smgp\Smgp.h"
#include ".\QQTX\QQTX.h"
#include ".\Cbip\Cbip.h"
#define MYSQL_CONNECTION_USE_LOADLIBRARY
#include "..\..\public\MySql\MySqlConnection.h"
#include "..\..\public\MySql\MySqlRecordSet.h"
#include "LuTool.h"
#include "gsoap_public\h.nsmap"
#include "GDDX_Isag_Mms\ISAGMMS.nsmap"
#include "GDDX_Isag_Mms\ISAGMMSMessageNotificationBindingService.h"
#include "GDDX_Isag_Sms\ISAGSMS.nsmap"
#include "GDDX_Isag_Sms\ISAGSMSSmsNotificationBindingService.h"
#include "MobsetApi\MobsetApi.nsmap"
#include "MobsetApi\MobsetApiMobsetApiSoapService.h"
#include "MMS_mm7\IMm7MMS.nsmap"
#include "MMS_mm7\IMm7MMSmm7SoapBindingService.h"
#include "BJDX_iagw_Mms\IAGWMMS.nsmap"
#include "BJDX_iagw_Mms\IAGWMMScapServiceSoapBindingService.h"
#include <afxcontrolbars.h>
#define SAFE_RELEASE(pObject) try{if(pObject){pObject->Release();pObject = NULL;}}catch(...){}
#define SAFE_DELETE(pObject) try{if(pObject){delete pObject; pObject = NULL;}}catch(...){}
//#define SMSCENTER_TWO //<2F><>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><E2B4A6><EFBFBD><EFBFBD>2x<32><78>ʾ<EFBFBD><CABE>Mas<61><73><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8>3x .
//#define MSG_MAXSENDLEN 70
//#define COM_TIMOUT 20 //<2F><><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD>ʱ<EFBFBD><CAB1>,<2C><>
#define DEFAULT_DBNAME "corpsms" //Ĭ<>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>ΪSql Server ʱ<><CAB1><EFBFBD><EFBFBD>
#define DEFAULT_DBNAMET "corpsmst" //Ĭ<>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>ΪSql Server ʱ<><CAB1><EFBFBD><EFBFBD>
#define LOG_MAX_CHAR2 620
#define LOG_MAX_CHAR22 620
#define MAX_RESENDCOUNT 2 //<2F><><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD>2<EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>ʧ<EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32>
//<2F>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define MOB_HEAD_FILETYPE _T("MULTMOB1") //<2F><>ȡ<EFBFBD>ֻ<EFBFBD><D6BB>б<EFBFBD><D0B1><EFBFBD><EFBFBD>ļ<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>
typedef struct _MobileCom_Head
{
TCHAR szFileType[ 16]; //<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><><D3A6>ΪMOB_HEAD_FILETYPE
TCHAR szIP[32];
TCHAR szUser[32];
TCHAR szPasswd[32];
TCHAR szCmpp_Server[32];
TCHAR szCmpp_User[32];
TCHAR szCmpp_Passwd[32];
TCHAR szCmpp_CorpID[32];
TCHAR szCmpp_Num[32];
long lSendCount; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int lCheckReSend;
BOOL bCheckBack;
TCHAR szIP2[32];
TCHAR szUser2[32];
TCHAR szPasswd2[32];
long lTopSel;
long lNumType;
long lTempUse;
long lSendFCS;
long lReport;
long lDelay;
TCHAR szWindow[124];
BOOL bVerifySignatureReject;
BOOL bVerifySignature;
2025-02-28 17:05:50 +08:00
BOOL bMainReSend;
BOOL bAllNum;
BOOL bCheckCM;
BOOL bExCM;
BOOL bSubNum;
BOOL bCmpp;
TCHAR szExchangeNum[32];
long lCmpp_Port;
BOOL bShowLog;
BOOL bAdc;
TCHAR szCmpp_YWID[32];
BOOL bLongSms;
BOOL bPushReport;
long lCmpp_MaxLen;
BOOL bNoRet;
BOOL bNoReport;
BOOL bExCM2;
long lSpeed;
long lSelectLock;
long lUpdateLock;
long lType;
long lCmpp_LocalPort;
long lThread_Send;
long lThread_Ret;
long lThread_Report;
TCHAR szA1[64];
TCHAR szA2[64];
TCHAR szA3[64];
TCHAR szA4[64];
TCHAR szA5[64];
TCHAR szA6[64];
TCHAR szA7[64];
TCHAR szA8[64];
TCHAR szA9[64];
TCHAR szCmpp_NodeID[32];
BOOL bLog; //<2F><>¼<EFBFBD><C2BC>־
BOOL bLogEx; //<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
long lOnePackSmsCount;
BOOL bSupLongSms;
long lThread_Public_SendSms;
TCHAR szSendRet[48];
BOOL bNoRecv;
BOOL SD_Disable1;
BOOL SD_Disable2;
SYSTEMTIME SD_B1;
SYSTEMTIME SD_B2;
SYSTEMTIME SD_E1;
SYSTEMTIME SD_E2;
BOOL bExpLongSms;
BOOL bMmsAudit;
BOOL bShowLog2;
TCHAR szA10[64];
TCHAR szProvider[32];
DWORD dwIDCount; //<2F><><EFBFBD>ں<EFBFBD><DABA>ݺ<EFBFBD><DDBA><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ȡ״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
BOOL bNo86;
BOOL TDError_Enable; //<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int TDError_Gap; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int TDError_Interval; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
int TDError_BeginCount; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int TDError_Warning_Resend; //<2F>ط<EFBFBD><D8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int TDError_Warning_Black; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int TDError_Warning_SendFailPer; //<2F><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int TDError_Warning_ReportFailPer; //״̬ʧ<CCAC>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int TDError_Warning_DelaySec; //<2F><>ʱʱ<CAB1>䷧ֵ
int TDError_Warning_DelayPer; //<2F><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL bLogEx2; //<2F><>¼<EFBFBD><C2BC>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
}MobileCom_Head;
#define LOG_MAX_CHAR 2048
#define LOG_MAX_LINE 24
typedef struct _SC_Log
{
long lLogType;
long lShowInWin;
CString strLog;
}SC_Log;
typedef CList<SC_Log , SC_Log&> CSC_Log;
//<2F><><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD>״̬
typedef struct _MT_Resp
{
ULONG lSendID; //<2F><><EFBFBD>ݿ<EFBFBD><DDBF>м<EFBFBD>¼<EFBFBD><C2BC>SendID
ULONG lResult; //<2F><><EFBFBD><EFBFBD>״̬
ULONG lReSendCount; //<2F>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6>ٴ<EFBFBD>
TCHAR szMsgID[64]; //<2F><><EFBFBD>ͳɹ<CDB3>ʱ<EFBFBD>д˷<D0B4><CBB7>أ<EFBFBD><D8A3><EFBFBD>ϢID
TCHAR szErrMsg[64]; //<2F><><EFBFBD>ͳɹ<CDB3>ʱ<EFBFBD>д˷<D0B4><CBB7>أ<EFBFBD><D8A3><EFBFBD>ϢID
}MT_Resp;
typedef CList<MT_Resp , MT_Resp&> CMT_Resp;
//<2F><><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD>״̬
typedef struct _MT_Report
{
long lReportOK;
long bSubmitError;
TCHAR szStatus[32];
TCHAR szMobile[64]; //״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TCHAR szSender[64]; //<2F><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD><EBA3AC><EFBFBD><EFBFBD>ͨ<EFBFBD>ŵĿ<C5B5><C4BF><EFBFBD><EFBFBD>õ<EFBFBD>
SYSTEMTIME tTime; //״̬<D7B4><CCAC><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
TCHAR szMsgID[64]; //<2F><><EFBFBD>ͳɹ<CDB3>ʱ<EFBFBD>д˷<D0B4><CBB7>أ<EFBFBD><D8A3><EFBFBD>ϢID
TCHAR szErrMsg[64]; //<2F><><EFBFBD>ͳɹ<CDB3>ʱ<EFBFBD>д˷<D0B4><CBB7>أ<EFBFBD><D8A3><EFBFBD>ϢID
}MT_Report;
typedef CList<MT_Report , MT_Report&> CMT_Report;
#define FZ_MAX_MOBILE 100 //<2F><><EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD><C9B4>ŵĶ<C5B5><C4B6>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define FZ_MAX_MOBILE_MORE 20000 //<2F><><EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD><C9B4>ŵĶ<C5B5><C4B6>ź<EFBFBD><C5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#ifdef _DEBUG
#define FZ_MAX_SEND 50
#else
#define FZ_MAX_SEND 200
#endif
typedef struct _RecvSms_MmsAttach
{
long lSize;
BYTE * pData;
TCHAR szName[64];
TCHAR szID[64];
TCHAR szLocation[64];
TCHAR szType[64];
}RecvSms_MmsAttach;
typedef struct _FZ_Mobile
{
TCHAR szMobile[24];
TCHAR szRecver[32];
long lSendID;
long lSendRet;
}FZ_Mobile;
typedef CArray<FZ_Mobile , FZ_Mobile&> CFZ_Mobile;
typedef struct _FZ_Send
{
BOOL bEnable;
BOOL bSendOk;
TCHAR szSendNum[32];
TCHAR szMsg[1024];
TCHAR szSrcNum[32];
TCHAR szAddNum[32];
TCHAR szMsgID[64];
TCHAR szErrorMsg[64];
TCHAR MmsSendID[64];
long lSendID;
long lCorpID;
long lUserID;
long lMmsFileID;
BOOL bMmsFileSend;
long lOneSendID;
long lmmSize;
BOOL bOnlySubmitMmsFile;
long lMmsFileAuditID;
long lErrorCode;
SYSTEMTIME tTime;
long lReSendCount;
long lMobileCount;
FZ_Mobile Mobile[FZ_MAX_MOBILE];
CFZ_Mobile * pMobile; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
long lMmsAttach;
RecvSms_MmsAttach * pMmsAttach;
}FZ_Send;
typedef CList<FZ_Send , FZ_Send&> CFZ_Send;
typedef struct _FXSend_MT
{
long SendID;
long lTDMsgType;
long CorpID;
long UserID;
long MmsFileID;
long mmSize;
CString GroupID;
long Status;
CString MsgID;
long SendRet;
long SendFCS;
long ReSendCount;
long ReSendCountSrc;
CString Sender;
CString SendNum;
CString Recver;
CString RecvNum;
long RecvNumType;
CString Msg;
long MsgType;
COleDateTime SubTime;
COleDateTime Timer;
long Priority;
long StatusReport;
COleDateTime OvrTime;
COleDateTime SendTime;
COleDateTime RecvTime;
CString RecvStatus;
long KF;
CString IP;
CString SM_ID;
CString TRANS_CODE;
CString ORGAN_CODE;
COleDateTime tAddThisTime;
BOOL bLongSms;
long lLongSmsRand;
BOOL bOnlySubmitMmsFile;
CString strSignature;
2025-02-28 17:05:50 +08:00
}FXSend_MT;
typedef CList<FXSend_MT , FXSend_MT&> CFXSend_MT;
#define FZ_MAX_LONGSMS 1000
typedef struct _FZ_LongSms
{
long lMsgType;
long lSendID;
TCHAR szSendNum[32]; //<2F><><EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD><DFBA><EFBFBD><EBA3AC><EFBFBD><EFBFBD>lMsgType==MSGTYPE_REPORT,<2C><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD>
TCHAR szRecvNum[32]; //<2F><><EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD><DFBA><EFBFBD>
TCHAR szMsg[256]; //<2F><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
long lLongMsgRand; //<2F><><EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>
long lLongMsgAll;
long lLongMsgIndex;
}FZ_LongSms;
typedef struct _ZSDX_RegNum
{
TCHAR szUser[32];
TCHAR szPasswd[32];
TCHAR szConnID[32];
DWORD dwEndTime;
}ZSDX_RegNum;
typedef CArray<ZSDX_RegNum , ZSDX_RegNum&> CZSDX_RegNum;
typedef struct _ZSDX_Users
{
long lRegNumIndex;
CString strRegNum;
CString strUser;
CString strPasswd;
}ZSDX_Users;
typedef CArray<ZSDX_Users , ZSDX_Users&> CZSDX_Users;
#define ZSDX_MAX_PROCESS 40
typedef struct _ZSDX_Data_Recv
{
char szHead[2048]; //httpͷ<70><CDB7><EFBFBD><EFBFBD>
ULONG lDataLen2; //Ӧ<><D3A6><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>
ULONG lDataLen; //Ӧ<><D3A6><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>
ULONG lRecvLen; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>
BOOL bRecvFrame; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Frame;
BYTE * pRecvFrame; //<2F>յ<EFBFBD><D5B5><EFBFBD>Frame
}ZSDX_Data_Recv;
//#define SMSCENTER_NX
//#define GDYD_TEMP
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_STDAFX_H__F29B1587_92A1_4DB8_A659_2AE865E3FCFE__INCLUDED_)