COM-порт в Windows (программирование): различия между версиями

Содержимое удалено Содержимое добавлено
Строка 361:
if(SetCommMask(port->handle,EV_RXCHAR)) {
/* Связываем порт и объект синхронизации*/
WaitCommEvent(port->handle, &state, &sync);
/* Начинаем ожидание данных*/
wait = WaitForSingleObject(sync.hEvent, timeout);
Строка 367:
if(wait == WAIT_OBJECT_0) {
/* Начинаем чтение данных */
ReadFile(port->handle, dst, size, &read, &sync);
/* Ждем завершения операции чтения */
wait = WaitForSingleObject(sync.hEvent, READ_TIME);
/* Если все успешно завершено, узнаем какой объем данных прочитан */
if(wait == WAIT_OBJECT_0)
if(GetOverlappedResult(port->handle, &sync, &read, FALSE))
reuslt = read;
}