本人串口通信要解决的传输文件数据量大,而一般网上普遍的异步方式读串口的函数都是用
 if (ClearCommError(g_hIDComDev, &dwErrorFlags, &ComStat)
{
return (int)ComStat.cbInQue;
}
得到串口接收到的字符的大小.采取自发自收验证的话,发送了一个13.几K的文件,但是最后ComStat.cbInQue里面总是得到的4096个字符,查了很久,不知道这个4096会跟什么有关?是跟本身的缓冲区有关么? ClearCommError(g_hIDComDev, &dwErrorFlags, &ComStat)这个函数到底是什么意思啊? 查了MSDN,也不太明白.根据调试信息,是说在ClearCommError(g_hIDComDev, &dwErrorFlags, &ComStat)这个函数返回true以后,ComStat.cbInQue就变成4096了. 如果我想用循环去接收4096以后的数据,应该怎么办? 可能还是不太明白ClearCommError(g_hIDComDev, &dwErrorFlags, &ComStat)这个函数和ComStat.cbInQue之间的关系......???请高手们指点.