SerialPort: приложение вызывает синий экран при отключении устройства во время передачи данных - PullRequest
0 голосов
/ 22 ноября 2011

Я работаю над решением для устройства с последовательным портом (с мостом USB). Все в порядке, кроме того, что вызывает синий экран при отключении устройства во время передачи данных. И мое приложение не ловит никаких исключений по этому поводу. Есть ли способ справиться с этим? Попросите пользователей не отключаться, пока данные полностью не передаются, не способ.

Я использую класс System.IO.Ports.SerialPort для чтения данных с устройства.

1 Ответ

1 голос
/ 22 ноября 2011

Это проблема USB-моста. Этого никогда не случится с реальным последовательным портом, с хорошо написанным драйвером порта. Драйверы последовательного порта в Windows, Linux и других ОС известны как очень стабильные и надежные. В то же время, ошибочные эмуляции последовательного порта вызывают много проблем, от сбоя клиентского приложения до синего экрана.

Единственное, что вы можете сделать, это порекомендовать своим клиентам работать с реальным последовательным портом или стабильной эмуляцией порта (мостом) и избегать ошибочных эмуляций последовательного порта, таких как тот, с которым вы работаете.

...