Открывай порт через CreateFile.
Создавай событие CreateEvent
Заполняй в структуре OVERLAPPED поле hEvent.
Делай ReadFile/WriteFile передавая структуру OVERLAPPED последним параметром.
Запускай бесконечный цикл с WaitForSingleObject с таймаутом и в теле вызывай DoEvents.
При установке в сигнальное состояние эвента, вызывай GetOverlappedResult для получения статуса
серверянин писал(а):Смысл в том, чтобы как только пришел байт в порт - автоматически вызывалась бы подпрограмма чтения, как это делает MSCOMM.
(Для этого объект нужен, да? А как его сделать?)
серверянин писал(а):MSCOMM - штука конечно удобная, но нехороша тем, что вместе со скомпилированным экзешником приходится не только тащить файл .ocx, но еще и регистрировать его в системе, а это потребует процедуры инсталляции, что уже дополнительная волынка для пользователя.
Потому что никто не научил. Сорь, но впервые слышу. Где можно толково и внятно прочитать про это (на русском языке)?Хакер писал(а): почему бы не пользоваться registration-free подходом через манифест и SxS-перенаправление вызова CoCreateInstance/CoCreateClassFactory?
серверянин писал(а):Потому что никто не научил. Сорь, но впервые слышу. Где можно толково и внятно прочитать про это (на русском языке)?
Царь испугался,
Издал манифест:
"Мертвым - свободу,
Живых - под арест"
The trick писал(а): тут придется работать с потоками
Сейчас этот форум просматривают: AhrefsBot, SemrushBot, Yandex-бот и гости: 37