|
@@ -343,13 +343,13 @@ DWORD CSerialPort::Read(void *lpBuf, DWORD dwCount)
|
|
|
// 使用ClearCommError来读取缓存区接受到的字节时,
|
|
|
// 可能受系统线程调试或硬件延时, cbInQue为空,
|
|
|
// 这里要用while延时获取;
|
|
|
- DWORD dwTick = GetTickCount();
|
|
|
+ DWORD dwTick = GetTickCount64();
|
|
|
DWORD dwLastLen = 0;
|
|
|
//while (ComStat.cbInQue == 0)
|
|
|
while(1)
|
|
|
{// cbInQue表示输入缓冲区的字节数;
|
|
|
Sleep(150);
|
|
|
- if (GetTickCount() - dwTick > 5000)
|
|
|
+ if (GetTickCount64() - dwTick > 5000)
|
|
|
break;
|
|
|
ClearCommError(m_hComm, &dwErrorFlags, &ComStat);
|
|
|
if ( ComStat.cbInQue != 0 && dwLastLen == ComStat.cbInQue )
|