IOCTL_USB_USER_REQUEST IOCTL (usbuser.h)
La solicitud de control de E/S de IOCTL_USB_USER_REQUEST está disponible tanto para las aplicaciones en modo de usuario como para los controladores en modo kernel.
IOCTL_USB_USER_REQUEST es una solicitud de control de E/S en modo de usuario. Esta solicitud tiene como destino el controlador de host USB (GUID_DEVINTERFACE_USB_HOST_CONTROLLER).
Los autores de llamadas pueden especificar cualquiera de los siguientes códigos de solicitud:
- USBUSER_CLEAR_ROOTPORT_FEATURE
- No use esta solicitud.
- USBUSER_GET_CONTROLLER_DRIVER_KEY
- Notifica la clave del controlador de host en una cadena Unicode con tipo USB_UNICODE_NAME. Esta solicitud siempre está habilitada.
- USBUSER_GET_CONTROLLER_INFO_0
- Recupera una estructura de USB_CONTROLLER_INFO_0 que describe el controlador de host. Esta solicitud siempre está habilitada.
- USBUSER_GET_ROOTPORT_STATUS
- No use esta solicitud.
- USBUSER_GET_ROOTHUB_SYMBOLIC_NAME
- Notifica el nombre simbólico del concentrador raíz en una cadena Unicode con tipo USB_UNICODE_NAME. Esta solicitud siempre está habilitada.
- USBUSER_INVALID_REQUEST
- No use esta solicitud.
- USBUSER_OP_CLOSE_RAW_DEVICE
- No use esta solicitud.
- USBUSER_OP_OPEN_RAW_DEVICE
- No use esta solicitud.
- USBUSER_OP_MASK_DEVONLY_API
- No use esta solicitud.
- USBUSER_OP_MASK_HCTEST_API
- No use esta solicitud.
- USBUSER_OP_RAW_RESET_PORT
- No use esta solicitud.
- USBUSER_OP_SEND_ONE_PACKET
- No use esta solicitud.
- USBUSER_OP_SEND_RAW_COMMAND
- No use esta solicitud.
- USBUSER_SET_ROOTPORT_FEATURE
- No use esta solicitud.
- USBUSER_PASS_THRU
- Envía un comando específico del proveedor definido por la estructura USB_PASS_THRU_PARAMETERS al controlador de miniporte del controlador de host. Esta solicitud siempre está habilitada.
- USBUSER_GET_BANDWIDTH_INFORMATION
- Recupera una estructura de USB_BANDWIDTH_INFO que contiene información sobre el ancho de banda asignado. Esta solicitud siempre está habilitada.
- USBUSER_GET_POWER_STATE_MAP
- Recupera una estructura de USB_POWER_INFO que contiene información sobre el estado de energía del controlador de host y los concentradores raíz. Esta solicitud siempre está habilitada.
- USBUSER_GET_BUS_STATISTICS_0
- Recupera una estructura de USB_BUS_STATISTICS_0 que contiene estadísticas de bus. Esta solicitud siempre está habilitada.
- USBUSER_GET_BUS_STATISTICS_0_AND_RESET
- No use esta solicitud.
- USBUSER_GET_USB_DRIVER_INFORMATION
- Recupera una estructura de USB_DRIVER_VERSION_PARAMETERS que indica la versión del controlador, la pila USB y las interfaces asociadas. Esta solicitud siempre está habilitada.
- USBUSER_GET_USB2_HW_VERSION
- No use esta solicitud.
Búfer de entrada
El búfer de Irp-AssociatedIrp.SystemBuffer> contiene una estructura de encabezado de solicitud de usuario (USBUSER_REQUEST_HEADER) que define la solicitud. Después de la estructura de encabezado, se trata de una estructura que contiene los parámetros de la solicitud. Para obtener más información sobre las estructuras de parámetros que corresponden a cada solicitud, consulte la descripción de cada solicitud.
Longitud del búfer de entrada
Tamaño de una estructura de USBUSER_REQUEST_HEADER .
Búfer de salida
Una estructura de parámetros sigue inmediatamente la estructura de USBUSER_REQUEST_HEADER en Irp-AssociatedIrp.SystemBuffer>. Para algunas solicitudes de usuario, la estructura de parámetros contendrá datos de salida cuando se complete la solicitud.
Longitud del búfer de salida
Longitud de la estructura de parámetros.
Requisitos
Requisito | Valor |
---|---|
Header | usbuser.h (include Usbuser.h) |