使用API异步串口通信 为什么每次都只能收到8个字节
wzyzb 2009-12-23 02:37:54 怎么设置,才能使改变每次收到的字节数呢?
线程中使用 WaitCommEvent 当EV_RXCHAR事件发生时,发送消息到主线程,OnReceive处理接收到的消息
下面是读缓冲
if (ClearCommError(m_hCom, &dwErr, &nStat)&&dwErr>0)
{
DT("read Function :ClearCommError return Error ");
PurgeComm(m_hCom, PURGE_RXABORT | PURGE_RXCLEAR);
return 0;
}
if(!ReadFile(m_hCom, chBuf, nSize, &lLen, &m_ro)) //ReadFile 怎么老是返回TRUE
{
if(GetLastError() == ERROR_IO_PENDING) //这里根本没有执行到
{
WaitForSingleObject(m_ro.hEvent,5000);
if(!GetOverlappedResult(m_hCom, &m_ro, &lLen, false))
{
if(GetLastError() != ERROR_IO_INCOMPLETE)
lLen = 0;
}
}
else
lLen = 0;
}