Partager via


IOCTL_USB_GET_HUB_INFORMATION_EX IOCTL (usbioctl.h)

La demande de contrôle d’E/S IOCTL_USB_GET_HUB_INFORMATION_EX est envoyée par une application pour récupérer des informations sur un hub USB dans une structure USB_HUB_INFORMATION_EX.

La requête récupère le numéro de port le plus élevé sur le hub. Pour les hubs USB 2.0 et SuperSpeed (hubs non racines), la requête récupère également les descripteurs de hub associés, comme défini dans les spécifications USB 2.0 et 3.0, respectivement.

IOCTL_USB_GET_HUB_INFORMATION_EX est une demande de contrôle d’E/S en mode utilisateur. Cette requête cible l’appareil du hub USB (GUID_DEVINTERFACE_USB_HUB).

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée

AssociatedIrp.SystemBuffer pointe vers une structure USB_HUB_INFORMATION_EX allouée par l’appelant.

Longueur de la mémoire tampon d’entrée

Le membre Parameters.DeviceIoControl.InputBufferLength indique la taille, en octets, de la mémoire tampon allouée par l’appelant dont la taille est égale à sizeof(USB_HUB_INFORMATION_EX).

Mémoire tampon de sortie

En sortie, la structure USB_HUB_INFORMATION_EX pointée par AssociatedIrp.SystemBuffer est remplie d’informations sur le hub.

Longueur de la mémoire tampon de sortie

Le membre Parameters.DeviceIoControl.OutputBufferLength indique la taille, en octets, de la mémoire tampon de sortie SystemBuffer.

Bloc d’état

La pile USB définit Irp->IoStatus.Status sur STATUS_SUCCESS si la requête réussit. Sinon, la pile de pilotes USB définit 'état à la condition d’erreur appropriée, telle que STATUS_INVALID_PARAMETER ou STATUS_INSUFFICIENT_RESOURCES.

Exigences

Exigence Valeur
client minimum pris en charge Windows 8
serveur minimum pris en charge Aucun pris en charge
d’en-tête usbioctl.h (include Usbioctl.h)

Voir aussi

USB_HUB_INFORMATION_EX