Подскажите, в чем может быть проблема?
Код: Выделить всё
void ReadCOM()
{
DWORD receive_size;
DWORD number_bytes;
DWORD mask;
DWORD port_status;
DWORD errors;
vector <unsigned char> received_data(5);
COMSTAT comstat;
overlapped_read.hEvent = CreateEvent(NULL, TRUE, TRUE, NULL);
SetCommMask(serial_handle, EV_RXCHAR);
while (1)
{
WaitCommEvent(serial_handle, &mask, &overlapped_read);
port_status = WaitForSingleObject(overlapped_read.hEvent, INFINITE);
if(port_status==WAIT_OBJECT_0)
{
ClearCommError(serial_handle, &errors, &comstat);
number_bytes = comstat.cbInQue;
cout << "-------" << received_data.size() << "--------" << endl;
ReadFile(serial_handle, &received_data[0], number_bytes, &receive_size, &overlapped_read);
for(unsigned int i=0; i<number_bytes; i++)
{
cout << received_data[i];
}
cout << endl;
}
}
}