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


Метод ISensorClassExtension::P rocessIoControl (sensorclassextension.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 расположения отправляют только ioCTLs WPD, которые всегда могут обрабатываться расширением класса датчика.

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

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

Требования

Требование Ценность
целевая платформа Виндоус
заголовка sensorclassextension.h
библиотеки SensorClassExtension.lib

См. также

ISensorClassExtension