Поделиться через


Расширенные функции

Некоторые функции связи можно вызывать для устройства с помощью функции EscapeCommFunction. Эта функция отправляет код для направления устройства на выполнение расширенной функции. Например, приложение может приостановить передачу символов с помощью кода SE ТБ REAK и возобновить передачу с помощью кода CLRBREAK. Эти конкретные операции также можно запустить, вызвав функции SetCommBreak и ClearCommBreak. EscapeCommFunction также можно использовать для реализации ручного управления модемом. Например, коды CLRDTR и SETDTR можно использовать для реализации ручного управления потоком DTR (data-terminal-ready). Обратите внимание, что ошибка возникает, если процесс использует EscapeCommFunction для управления линией DTR, когда устройство было настроено для включения подтверждения DTR, или строки RTS (запрос к отправке), если включено подтверждение RTS.

Функция DeviceIoControl позволяет процессу отправлять расширенный код функции непосредственно в указанный драйвер устройства, что приводит к выполнению данной операции устройства. DeviceIoControl предоставляет устройству, связанному с возможностями ресурса связи, которые не поддерживаются стандартными функциями последовательной связи. Это позволяет приложению настраивать устройство с помощью параметров, уникальных для этого устройства, а также вызывать все функции, относящиеся к устройству.