| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Как перехватить ошибку в TAdpComPort? |
| Автор: =Женек= 26.7.2019, 17:55 |
| Господа, пишу в Embarcadero на C++. Использую пакет AsyncPro, в частности, компонент TAdpComPort. Обмен данными наладил, хочу только чтобы программа не теряла человеческий вид, когда USB шнур выдергивается. Данные отправляю нечасто (раз в 100 мсек) и небольшими пакетами (по 30 байт). В связи с этим я не гнушаюсь проверять перед каждой отправкой, есть ли компорт в системе и если нет, то блокирую отправку данных. Но вот беда, если дисконнект случается во время отправки данных, то вылазит системная ошибка - Exception EInOutError. Пытался отловить ее через try catch, чтобы программа молча реагировала на отключение шнура - но не получилось. Где-то прочитал, что такое невозможно из-за особенностей AsyncPro (что-то с потоками связано). А в самом TAdpComPort обработка ошибок не предусмотрена. Так как мне блокировать сообщения об ошибках? |
| Автор: =Женек= 6.8.2019, 21:11 |
| Окуенный форум. В отдельных темах под 2000 просмотров, а ответов ноль) |