📄 smstest.h
字号:
//#include "..\MsgType.h"
//#include "stdafx.h"
#include "ComPort.h"
#define GSM_7BIT 0
#define GSM_8BIT 4
#define GSM_UCS2 8
// 短消息参数结构,编码/解码共用
// 其中,字符串以0结尾
typedef struct {
char SCA[16]; // 短消息服务中心号码(SMSC地址)
char TPA[16]; // 目标号码或回复号码(TP-DA或TP-RA)
char TP_PID; // 用户信息协议标识(TP-PID)
char TP_DCS; // 用户信息编码方式(TP-DCS)
char TP_SCTS[16]; // 服务时间戳字符串(TP_SCTS), 接收时用到
char TP_UD[161]; // 原始用户信息(编码前或解码后的TP-UD)
char index; // 短消息序号,在读取时用到
}SM_PARAM;
//SMS参数结构
typedef struct {
HWND hWnd;
int CMGR_index;
int sendcomport; //发送手机端口
int recvcomport; //接收手机端口
char phonenum[16]; // 目标号码或回复号码
char content[161]; // 原始用户信息(编码前或解码后的TP-UD)
char recvfolder[512]; //保存接收回来的短信
char Pushdata[512];
char centernum[16]; // 短信中心号码
DWORD portrate; //端口速率
char SysPath[512]; //临时借用 传递参量
}SMS_PARAM;
class CSMSTest : public CComPort
{
public:
CSMSTest();
~CSMSTest();
BOOL sendsms(int portA ,char *phonenum,char *SMScontent,CString centernum);
int recvsms(int portB,SMS_PARAM *param);
BOOL readsms( SMS_PARAM *param );
//BOOL InitialComPort();
//void FreeComPort() ;
void SethWnd(HWND hWnd);
CString m_recv;
UINT m_SMSIndex;
CString m_recvFolder;
BOOL* m_Terminal;
CString SysTemPath;
private:
HANDLE com_handle;
HINSTANCE DllInst,DllInst2;
// bool (__stdcall *Send)(HANDLE m_hCom,char *sendstr);
// char* (__stdcall *Receive)(HANDLE m_hCom);
// int (__stdcall *gsmString2Bytes)(const char* pSrc, unsigned char* pDst, int nSrcLength);
//int (__stdcall *gsmEncodePdu)(const SM_PARAM* pSrc, char* pDst);
public:
//BOOL (__stdcall *Send)(UINT bComId,char *sendstr,int len);
//BOOL (__stdcall *Receive)(UINT bComId,char *recvstr,int &len);
//BOOL (__stdcall *OpenPort)(UINT bComId,DWORD dwBaudRate);
// BOOL (__stdcall *ClosePort)(UINT bComId);
//int (__stdcall *gsmDecodePdu)(const char* pSrc, SM_PARAM* pDst);
BOOL InitPort(DWORD dwBaudRate);
BOOL OpenPorte(UINT bComId,DWORD dwBaudRate);
BOOL ClosePorte(UINT bComId);
BOOL Senddata( UINT bComId,char *sendstr,int len );
BOOL Receivedata(UINT bComId,char *recvstr,int &len);
int gsmBytes2String(const unsigned char* pSrc, char* pDst, int nSrcLength);
int GsmString2Bytes(const char* pSrc, unsigned char* pDst, int nSrcLength);
int gsmEncode7bit(const char* pSrc, unsigned char* pDst, int nSrcLength);
int gsmDecode7bit(const unsigned char* pSrc, char* pDst, int nSrcLength);
int gsmEncode8bit(const char* pSrc, unsigned char* pDst, int nSrcLength);
int gsmDecode8bit(const unsigned char* pSrc, char* pDst, int nSrcLength);
int gsmEncodeUcs2(const char* pSrc, unsigned char* pDst, int nSrcLength);
int gsmDecodeUcs2(const unsigned char* pSrc, char* pDst, int nSrcLength);
int gsmInvertNumbers(const char* pSrc, char* pDst, int nSrcLength);
int gsmSerializeNumbers(const char* pSrc, char* pDst, int nSrcLength);
int GsmEncodePdu(const SM_PARAM* pSrc, char* pDst);
int GsmDecodePdu(const char* pSrc, SM_PARAM* pDst);
};
BOOL WINAPI SendSMS(SMS_PARAM *param ,
BOOL* pStop,
UINT DevId = 0 ,
UINT TestCount = 1,
UINT TestInterval = 1000);
BOOL RecvSMS(SMS_PARAM *param ,
BOOL* pStop,
UINT DevId = 0 ,
UINT TestCount = 1,
UINT TestInterval = 1000);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -