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


IOCTL_SERIAL_GET_MODEM_CONTROL IOCTL (ntddser.h)

Запрос IOCTL_SERIAL_GET_MODEM_CONTROL возвращает значение регистра элемента управления модема в последовательном контроллере.

Чтобы задать регистр управления модемом, клиент может использовать запрос IOCTL_SERIAL_SET_MODEM_CONTROL .

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Нет.

Длина входного буфера

Нет.

Выходной буфер

Член AssociatedIrp.SystemBuffer указывает на выделенный клиентом буфер ULONG, который драйвер последовательного контроллера использует для вывода значения регистра управления модемом.

Длина выходного буфера

Член Parameters.DeviceIoControl.OutputBufferLength имеет размер ULONG в байтах.

Блок состояния

Если запрос выполнен успешно, элементу Information присваивается размер ULONG (в байтах). В противном случае элементу Information присваивается нулевое значение.

Для элемента Status задано одно из универсальных значений состояния для запросов на управление последовательным устройством.

Комментарии

Запросы IOCTL_SERIAL_GET_MODEM_CONTROL и IOCTL_SERIAL_SET_MODEM_CONTROL используются в основном для тестирования оборудования. Для операций управления модемом не определен стандартный макет регистра. Периферийные драйверы, использующие эти ioCTL, рискуют сделать себя зависимыми от аппаратных функций конкретного последовательного контроллера.

Пример макета регистра элемента управления модемом см. в определении битов MCR (SERIAL_MCR_DTR по SERIAL_MCR_LOOP) в файле заголовка Serial.h в примере драйвера Serial на сайте GitHub.

Требования

Требование Значение
Заголовок ntddser.h (включая Ntddser.h)

См. также раздел

IOCTL_SERIAL_SET_MODEM_CONTROL