接收数据的代码是这样的: DWORD dwLength = 0;
if(ReadFile(m_hComm,pRXData,nRXLength,&dwLength,NULL)==FALSE)
{
DWORD dwErrorNo = GetLastError();
if(dwErrorNo)
{
CString strComError;
strComError.Format("数据接收时错误,错误码:%lu",dwErrorNo);
SetComError(strComError);
}
else m_strComError.Empty();
}
else m_strComError.Empty();接收端等待拨号,并且周期性的运行这几句话,发现每次刚拨通的时候会收到一大堆的0x91 0x11,后面除了收到正常数据外,还间插着一些乱七八糟的数据;后来我让发送端不再发送数据,只是拨通,但接收端仍然在刚拨通的时候收到一堆0x91 0x11,后面还不断收到乱七八糟的数据(当然也没有正常数据,因为发送端没有发送)。这是怎么回事呢?大侠救命啊!!!!
if(ReadFile(m_hComm,pRXData,nRXLength,&dwLength,NULL)==FALSE)
{
DWORD dwErrorNo = GetLastError();
if(dwErrorNo)
{
CString strComError;
strComError.Format("数据接收时错误,错误码:%lu",dwErrorNo);
SetComError(strComError);
}
else m_strComError.Empty();
}
else m_strComError.Empty();接收端等待拨号,并且周期性的运行这几句话,发现每次刚拨通的时候会收到一大堆的0x91 0x11,后面除了收到正常数据外,还间插着一些乱七八糟的数据;后来我让发送端不再发送数据,只是拨通,但接收端仍然在刚拨通的时候收到一堆0x91 0x11,后面还不断收到乱七八糟的数据(当然也没有正常数据,因为发送端没有发送)。这是怎么回事呢?大侠救命啊!!!!
解决方案 »
- 请教debug和Release模式的设置
- 请问单文档视图的最大化/还原事件是对应哪个响应函数?
- 怎么取得一幅透明图片除去透明(透明色区域)以外的rgn
- 如何编程实现TCP/IP筛选
- 如何实现在屏幕右下角任务栏显示的图标中右键弹出窗口?
- dll中全局变量的初始化问题?
- 急急急急急急!
- 如何创建Windows Media Player的播放列表Playlist,并且按顺序播放?
- 关于全局钩子的问题
- ********谁能告诉我,sqlmail是咋回事,咋用啊,用在啥地方啊
- 请问怎么在CMainFrame的一个成员函数中调用一个CMyView类的成员函数?
- 请问ActiveX控件在网页上只自动下载注册一次即可?
ClearCommError(hComm,&dwError,&comStat);
ReadFile(hComm,DB->m_szTemp,comStat.cbInQue,&dwSize,0); //清除接收缓冲区
DWORD dwError;
COMSTAT comStat;
ClearCommError(m_hComm,&dwError,&comStat); BYTE* byTemp = new BYTE[1024];
int nLen;
DWORD dwSize;
if(comStat.cbInQue>1024) nLen = 1024;
else nLen = comStat.cbInQue;
ReadFile(m_hComm,byTemp,nLen,&dwSize,0); //清除接收缓冲区
delete[] byTemp; /////////////////////
if(ReadFile(m_hComm,pRXData,nRXLength,&dwLength,NULL)==FALSE)
{
DWORD dwErrorNo = GetLastError();
if(dwErrorNo)
{
CString strComError;
strComError.Format("数据接收时错误,错误码:%lu",dwErrorNo);
SetComError(strComError);
}
else m_strComError.Empty();
}我感觉这样清空不对呀
曾经试过一个内置猫和一个外置猫,就是这种情况
换成型号一样的就好了。