| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Работа с COM портом. Не читает. |
| Автор: Den64 6.2.2007, 00:33 | ||
| К компорту ничего неподключено, выход(Tx) соединён со входом(Rx) порта. Т.е что передано из порта то и должно быть принято. Открытие порта и передача работают правильно, а приём возвращает False. Не найду ошибку, подозреваю функцию ReadCOM. Подскажите что нетак делаю. (Хоть какие предположения плиз)
|
| Автор: Romikgy 6.2.2007, 00:47 |
эт те не lpt порт, у сом порта 2 буфера на передачу и на прием, из этого следует , что , то что ты передал на передачу ты никогда не прочитаешь заново, а было бы синхроное чтение, то получил бы висяк |
| Автор: Den64 6.2.2007, 01:23 |
| Спасибо за отает Romikgy. На щёт таво что то что передал больше не примешь я несогласен, всё что поступило на вход сохраняется во входном буфере до прочтения. Подключал вход и к устройству. Устройство отвечает, но прочитать немогу. |
| Автор: Anikmar 6.2.2007, 13:51 |
| А что GetLastError говорит? Что за ошибка конкретно? |
| Автор: Den64 6.2.2007, 20:37 |
| Не проверял на счёт GetLastError. Щас проверю. Спасибо. |
| Автор: Den64 6.2.2007, 23:27 |
| GetLastError возвращает 5. В помощи(C++Builder6) пока ненашол.. |
| Автор: Romikgy 6.2.2007, 23:36 | ||
|
| Автор: Den64 8.2.2007, 11:43 | ||
| С помошью подсказок Romikgy и Anikmar нашол жука. GetLastError выдавала 5. Воспользовался функцией FormatMessage выдала: Отказано в доступе. Затем я увидел что у меня вместо символа "|" стоит символ "/".
Разрешена была только запись. |