IOCTL_USB_GET_HUB_INFORMATION_EX IOCTL (usbioctl.h)
Una aplicación envía la solicitud de control de E/S IOCTL_USB_GET_HUB_INFORMATION_EX para recuperar información sobre un concentrador USB en una estructura de USB_HUB_INFORMATION_EX .
La solicitud recupera el número de puerto más alto del centro. Para los concentradores USB 2.0 y SuperSpeed (concentradores no raíz), la solicitud también recupera los descriptores de concentrador asociados, tal y como se define en las especificaciones USB 2.0 y 3.0, respectivamente.
IOCTL_USB_GET_HUB_INFORMATION_EX es una solicitud de control de E/S en modo de usuario. Esta solicitud tiene como destino el dispositivo del concentrador USB (GUID_DEVINTERFACE_USB_HUB).
Código principal
Búfer de entrada
AssociatedIrp.SystemBuffer apunta a una estructura de USB_HUB_INFORMATION_EX asignada por el autor de la llamada.
Longitud del búfer de entrada
El miembro Parameters.DeviceIoControl.InputBufferLength indica el tamaño, en bytes, del búfer asignado por el llamador cuyo tamaño es igual a sizeof(USB_HUB_INFORMATION_EX)
.
Búfer de salida
En la salida, la estructura de USB_HUB_INFORMATION_EX a la que apunta AssociatedIrp.SystemBuffer se rellena con información sobre el concentrador.
Longitud del búfer de salida
El miembro Parameters.DeviceIoControl.OutputBufferLength indica el tamaño, en bytes, del búfer de salida SystemBuffer.
Bloque de estado
La pila USB establece Irp-IoStatus.Status> en STATUS_SUCCESS si la solicitud se realiza correctamente. De lo contrario, la pila del controlador USB establece Estado en la condición de error adecuada, como STATUS_INVALID_PARAMETER o STATUS_INSUFFICIENT_RESOURCES.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8 |
Servidor mínimo compatible | No se admite ninguno |
Encabezado | usbioctl.h (incluya Usbioctl.h) |