Метод ISensorClassExtension::P rocessIoControl (sensorsclassextension.h)

Метод ISensorClassExtension::P rocessControl отправляет запросы управления вводом-выводом для переносимых устройств Windows (WPD) в расширение класса датчика для обработки.

Синтаксис

HRESULT ProcessIoControl(
  IWDFIoRequest *pRequest
);

Параметры

pRequest

Указатель на интерфейс IWDFIoRequest, представляющий объект запроса UMDF.

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

Этот метод возвращает HRESULT. Возможные значения включают, помимо прочего, одно из следующих значений.

Код возврата Описание
S_OK Метод выполнен успешно.
E_ACCESS_DENIED Нет разрешения. Например, запрос ввода-вывода запрашивал данные, для которых нет разрешений.
E_POINTER Обязательный аргумент указателя — NULL.
HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED) Запрос не содержал IOCTL WPD.

Комментарии

UMDF отправляет запросы на управление вводом-выводом к драйверам датчиков через IQueueCallbackDeviceIoControl::OnDeviceIoControl. Рекомендуется вызвать ProcessIoControl, чтобы перенаправить все запросы WPD в расширение класса датчика для обработки. Макрос WPD можно использовать IS_WPD_IOCTL, чтобы определить, является ли определенный код элемента управления специфическим для WPD. Клиенты API датчика и API расположения отправляют только IOCTL WPD, которые всегда могут обрабатываться расширением класса датчика.

После обработки запроса управления вводом-выводом расширение класса датчика использует интерфейс обратного вызова драйвера ISensorDriver для предоставления уведомлений соответствующим образом. Запросы WPD, которые расширение класса датчика не обрабатывает по умолчанию, отправляются драйверу через ISensorDriver::OnProcessWpdMessage.

Драйвер не должен выполнять запросы управления вводом-выводом, которые он пересылает в расширение класса датчика.

Требования

Требование Значение
Целевая платформа Windows
Header sensorsclassextension.h
Библиотека SensorsClassExtension.lib

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

ISensorClassExtension