WinCE下使用GPRS模块出现问题
WinCE的工程是Unicode字符集,因此在PC上写出来一个测试程序可以在Unicode工程下正常的发送中文短信,可是将代码复制到wince中就无法发送短信,使用ReadFile接收AT指令返回的命令一直显示接收的长度为0,请问一下这是什么原因,我第一次接触GPRS,一直没有调试成功,下面是我的一些代码;
HANDLE m_hPort;
m_hPort = CreateFile(
_T("COM3:"),
GENERIC_READ | GENERIC_WRITE, //允许读和写
0, //独占方式(共享模式)
NULL,
OPEN_EXISTING, //打开而不是创建(创建方式)
0,
NULL
);
这块是测试指令的返回
char* chs;
chs="AT\r\n";
DWORD dwNumWriteCMGF = 0;
WriteFile(m_hPort,chs,sizeof(chs),&dwNumWriteCMGF,NULL);
Sleep(1000);
char ch[30];
DWORD readLen = 0;
ReadFile( m_hPort,ch,10,&readLen,NULL);
chs = "AT+CSMP=17,167,2,25\r\n";//\x0D
int b = strlen(chs);
DWORD dwNumWriteCSMP = 0;
WriteFile(m_hPort, chs, b, &dwNumWriteCSMP, NULL);
Sleep(500);
chs = "AT+CSCS=\"UCS2\"\r\n";
int c = strlen(chs);
DWORD dwNumWriteCSCS = 0;
WriteFile(m_hPort, chs, c, &dwNumWriteCSCS, NULL);
Sleep(500);
接下来是对电话号码和中文短信内容的转换,这里就略过了,再者就是结束标志
chs = "\x1A";
int e = strlen(chs);
DWORD dwNumWriteEND = 0;
WriteFile(m_hPort, chs, e, &dwNumWriteEND, NULL);
Sleep(500);
测试好长时间一直没有成功,请问一下是什么原因,麻烦了,谢谢