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


IOCTL_USB_USER_REQUEST IOCTL (usbuser.h)

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

IOCTL_USB_USER_REQUEST — это запрос на управление вводом-выводом в пользовательском режиме. Этот запрос предназначен для хост-контроллера USB (GUID_DEVINTERFACE_USB_HOST_CONTROLLER).

Вызывающие элементы могут указать любой из следующих кодов запросов:

USBUSER_CLEAR_ROOTPORT_FEATURE
Не используйте этот запрос.
USBUSER_GET_CONTROLLER_DRIVER_KEY
Сообщает ключ драйвера хост-контроллера в строке Юникода с USB_UNICODE_NAME типом. Этот запрос всегда включен.
USBUSER_GET_CONTROLLER_INFO_0
Извлекает структуру USB_CONTROLLER_INFO_0 , описывающую контроллер узла. Этот запрос всегда включен.
USBUSER_GET_ROOTPORT_STATUS
Не используйте этот запрос.
USBUSER_GET_ROOTHUB_SYMBOLIC_NAME
Сообщает символьное имя корневого концентратора в строке Юникода с USB_UNICODE_NAME типом. Этот запрос всегда включен.
USBUSER_INVALID_REQUEST
Не используйте этот запрос.
USBUSER_OP_CLOSE_RAW_DEVICE
Не используйте этот запрос.
USBUSER_OP_OPEN_RAW_DEVICE
Не используйте этот запрос.
USBUSER_OP_MASK_DEVONLY_API
Не используйте этот запрос.
USBUSER_OP_MASK_HCTEST_API
Не используйте этот запрос.
USBUSER_OP_RAW_RESET_PORT
Не используйте этот запрос.
USBUSER_OP_SEND_ONE_PACKET
Не используйте этот запрос.
USBUSER_OP_SEND_RAW_COMMAND
Не используйте этот запрос.
USBUSER_SET_ROOTPORT_FEATURE
Не используйте этот запрос.
USBUSER_PASS_THRU
Отправляет конкретную команду поставщика, определенную структурой USB_PASS_THRU_PARAMETERS , драйверу мини-порта хост-контроллера. Этот запрос всегда включен.
USBUSER_GET_BANDWIDTH_INFORMATION
Извлекает структуру USB_BANDWIDTH_INFO , содержащую сведения о выделенной пропускной способности. Этот запрос всегда включен.
USBUSER_GET_POWER_STATE_MAP
Извлекает структуру USB_POWER_INFO , содержащую сведения о состоянии питания контроллера узла и корневых концентраторов. Этот запрос всегда включен.
USBUSER_GET_BUS_STATISTICS_0
Извлекает структуру USB_BUS_STATISTICS_0 , содержащую статистику по шине. Этот запрос всегда включен.
USBUSER_GET_BUS_STATISTICS_0_AND_RESET
Не используйте этот запрос.
USBUSER_GET_USB_DRIVER_INFORMATION
Извлекает структуру USB_DRIVER_VERSION_PARAMETERS , которая указывает версию драйвера, USB-стека и связанные интерфейсы. Этот запрос всегда включен.
USBUSER_GET_USB2_HW_VERSION
Не используйте этот запрос.

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

Буфер в Irp-AssociatedIrp.SystemBuffer> содержит структуру заголовка пользовательского запроса (USBUSER_REQUEST_HEADER), которая определяет запрос. За структурой заголовка следует структура, содержащая параметры запроса. Дополнительные сведения о структурах параметров, соответствующих каждому запросу, см. в описании каждого запроса.

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

Размер структуры USBUSER_REQUEST_HEADER .

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

Структура параметров сразу же следует за структурой USBUSER_REQUEST_HEADER в Irp-AssociatedIrp.SystemBuffer>. Для некоторых пользовательских запросов структура параметров будет содержать выходные данные по завершении запроса.

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

Длина структуры параметров.

Требования

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

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

USBUSER_REQUEST_HEADER

USB_BANDWIDTH_INFO

USB_CONTROLLER_INFO_0

USB_DRIVER_VERSION_PARAMETERS

USB_PASS_THRU_PARAMETERS

USB_POWER_INFO

USB_UNICODE_NAME