Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Предупреждение
UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. Новые функции не добавляются в UMDF 1, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе Начало работы сUMDF.
Метод OnDeviceIoControl вызывается для обработки запроса элемента управления ввода-вывода устройства, когда приложение выполняет определенную операцию на устройстве с помощью функции Microsoft Win32 OnDeviceIoControl.
Синтаксис
void OnDeviceIoControl(
[in] IWDFIoQueue *pWdfQueue,
[in] IWDFIoRequest *pWdfRequest,
[in] ULONG ControlCode,
SIZE_T InputBufferSizeInBytes,
SIZE_T OutputBufferSizeInBytes
);
Параметры
[in] pWdfQueue
Указатель на интерфейс IWDFIoQueue для объекта очереди ввода-вывода, из который поступает запрос.
[in] pWdfRequest
Указатель на интерфейс IWDFIoRequest, представляющий объект запроса платформы.
[in] ControlCode
Определяемый драйвером или системный код управления ввода-вывода (IOCTL), определяющий конкретную операцию, которая связана с запросом.
InputBufferSizeInBytes
Размер входного буфера для запроса в байтах.
OutputBufferSizeInBytes
Размер в байтах выходного буфера для запроса.
Возвращаемое значение
Никакой
Замечания
Драйвер регистрирует интерфейс IQueueCallbackDeviceIoControl, когда драйвер вызывает метод IWDFDevice::CreateIoQueue для создания очереди ввода-вывода или настройки очереди ввода-вывода по умолчанию.
Драйвер может реализовать один метод OnDeviceIoControl для всех очередей ввода-вывода или отдельных методов OnDeviceIoControl для каждой очереди ввода-вывода.
Метод OnDeviceIoControl получает каждый тип запроса элемента управления ввода-вывода устройства из очереди. (Тип запроса определяется WdfRequestDeviceIoControl типа перечисления WDF_REQUEST_TYPE для запроса.)
Дополнительные сведения о методах драйвера, связанных с очередями и вызовах платформы, см. в функции обратного вызова событий ввода-вывода. Метод OnDeviceIoControl должен обрабатывать каждый полученный запрос управления устройствами ввода-вывода. Дополнительные сведения о том, как драйверы UMDF обрабатывают запросы ввода-вывода, см. в обработки запросов ввода-вывода.
Драйвер может вызывать IWDFIoRequest::GetDeviceIoControlParameters, IWDFIoRequest::GetInputMemoryи методы IWDFIoRequest::GetOutputMemory для получения сведений о запросе и входных и выходных буферах.
Требования
| Требование | Ценность |
|---|---|
| целевая платформа | Виндоус |
| заголовка | wudfddi.h (include Wudfddi.h) |