采用异步I/O,readfile()从串口读取数据不全?解决方法
采用异步I/O,readfile()从串口读取数据不全?
COMMTIMEOUTS TimeOuts;
memset(&TimeOuts,0,sizeof(TimeOuts));
TimeOuts.ReadIntervalTimeout = MAXDWORD;
TimeOuts.ReadTotalTimeoutConstant = 10;
TimeOuts.ReadTotalTimeoutMultiplier = 10;
TimeOuts.WriteTotalTimeoutConstant = 2000;
TimeOuts.WriteTotalTimeoutMultiplier = 50;
ReadFile(hCom,pszRecv,1024,&ReadBytes,&ReadOver)
发现只读取了8个字节的数据(ReadBytes的值是8),本来要读取25个字节的数据。不知道哪里出了问题?
------解决方案--------------------
// 异步模式,一次读操作完成后,还要去判断输入缓冲区是否有数据。
COMMTIMEOUTS TimeOuts;
memset(&TimeOuts,0,sizeof(TimeOuts));
TimeOuts.ReadIntervalTimeout = MAXDWORD;
TimeOuts.ReadTotalTimeoutConstant = 10;
TimeOuts.ReadTotalTimeoutMultiplier = 10;
TimeOuts.WriteTotalTimeoutConstant = 2000;
TimeOuts.WriteTotalTimeoutMultiplier = 50;
ReadFile(hCom,pszRecv,1024,&ReadBytes,&ReadOver)
发现只读取了8个字节的数据(ReadBytes的值是8),本来要读取25个字节的数据。不知道哪里出了问题?
------解决方案--------------------
// 异步模式,一次读操作完成后,还要去判断输入缓冲区是否有数据。