-
- Ещё раз, используйте ClearCommError. Если в буфере уже есть то количество байт которое нужно, асинхронная операция не нужна. Цимес асинхронщины в том, что Вы запрашиваете заранее и ожидаете доставки, копая и ковыряясь в другом месте :). - Xитpый Kитaeц(20.03.2016 08:12)
- Мне именно этот цимес и нужен. Странно что Вы это до сих пор не понимаете. Я ж писал об этом в самом первом посте. Я не знаю какое количество байт мне нужно. Мне нужны все (до паузы в передаче или конца выделенного буфера естественно). - Mebius(20.03.2016 23:43)
- Кстати да. Здесь же _явное_ ожидание завершения асинхронной операции. Обычный ReadFile вполне подошёл бы. - fk0(20.03.2016 13:04)
- Объяснять долго. Рекомендую обратиться к литературе. Твоя проблема в том, что ты не представляешь принципов работы подсистемы ввода-вывода современных ОС (она, кстати, мало чем отличается между linux и windows, принципы одни, названия функций fk0(528 знак., 19.03.2016 17:28, ссылка)
- Спасибо, почему-то не встречалась. На всякий зацепил с прилагаемыми сорцами Vit(61 знак., 20.03.2016 13:46, ссылка)
- Зачем тогда все эти SelectCommMask и WaitCommEvent? - Mebius(19.03.2016 17:36)
- Это они пытались сделать жалкое подобие интерфейса терминалов юникса. Только не факт что драйвер компорта это поддерживает. Зачем искать сложности, когда можно сделать проще? А если твой EvtChar никогда в потоке не появится, но зато будет fk0(181 знак., 19.03.2016 17:57)
- Ещё раз, используйте ClearCommError. Если в буфере уже есть то количество байт которое нужно, асинхронная операция не нужна. Цимес асинхронщины в том, что Вы запрашиваете заранее и ожидаете доставки, копая и ковыряясь в другом месте :). - Xитpый Kитaeц(20.03.2016 08:12)