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


Функция UdecxWdfDeviceTryHandleUserIoctl (udecxwdfdevice.h)

Пытается обработать запрос IOCTL, отправленный программным обеспечением в пользовательском режиме.

Синтаксис

BOOLEAN UdecxWdfDeviceTryHandleUserIoctl(
       WDFDEVICE  UdecxWdfDevice,
  [in] WDFREQUEST Request
);

Параметры

UdecxWdfDevice

Дескриптор объекта устройства платформы, представляющего контроллер. Драйвер клиента инициализировал этот объект в предыдущем вызове UdecxWdfDeviceAddUsbDeviceEmulation.

[in] Request

Дескриптор объекта запроса платформы, который представляет запрос IOCTL.

Возвращаемое значение

Значение TRUE указывает, что расширение класса эмуляции USB-устройства (UdeCx) распознало и завершило запрос (успешно или неудачно). В этом случае драйвер клиента не должен выполнять запрос. В противном случае — FALSE; драйвер должен завершить запрос.

Комментарии

Драйвер клиента UDE представляется программному обеспечению пользовательского режима как драйвер хост-контроллера. Драйвер клиента регистрирует и предоставляет GUID_DEVINTERFACE_USB_HOST_CONTROLLER GUID интерфейса устройства. Программное обеспечение в пользовательском режиме может открыть дескриптор устройства, указав этот GUID. С помощью этого дескриптора программное обеспечение может отправлять запросы IOCTL.

Примечание Обратите внимание, что коды IOCTL другого интерфейса могут перекрываться с интерфейсом контроллера узла USB. Если такой ввод-вывод достигает этой функции, IOCTL будет обрабатываться неправильно.
 
Драйверу клиента не нужно обрабатывать полученный IOCTL-код. Он может отправить запрос к расширению класса, вызвав UdecxWdfDeviceTryHandleUserIoctl. Если расширение класса распознает запрос как стандартный запрос, оно завершает его. В противном случае вызов завершится ошибкой, и драйвер клиента должен завершить запрос. Список ioCTL, которые должны обрабатываться, см. в разделе USB IOCTLs для приложений и служб.

Требования

Требование Значение
Минимальная версия клиента Windows 10
Минимальная версия сервера Windows Server 2016
Целевая платформа Windows
Минимальная версия KMDF 1.15
Верхняя часть udecxwdfdevice.h (включая Udecx.h)
Библиотека Udecxstub.lib
IRQL PASSIVE_LEVEL

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

Архитектура: эмуляция USB-устройства (UDE)

Написание драйвера клиента UDE