IOCTL_USB_GET_HUB_CAPABILITIES_EX IOCTL (usbioctl.h)
La demande de contrôle d’E /S IOCTL_USB_GET_HUB_CAPABILITIES_EX récupère les fonctionnalités d’un hub USB.
IOCTL_USB_GET_HUB_CAPABILITIES_EX est une demande de contrôle d’E/S en mode utilisateur. Cette requête cible le périphérique hub USB (GUID_DEVINTERFACE_USB_HUB).
Code principal
Mémoire tampon d'entrée
Le membre AssociatedIrp.SystemBuffer pointe vers une mémoire tampon allouée par l’utilisateur.
Longueur de la mémoire tampon d’entrée
La longueur de la mémoire tampon est égale à sizeof(USB_HUB_CAPABILITIES_EX)
.
Mémoire tampon de sortie
AssociatedIrp.SystemBuffer pointe vers une structure de USB_HUB_CAPABILITIES_EX allouée par l’utilisateur. En sortie, cette structure décrit les fonctionnalités du hub.
Longueur de la mémoire tampon de sortie
Le membre Parameters.DeviceIoControl.OutputBufferLength indique la taille, en octets, des données retournées dans SystemBuffer, ou sizeof(USB_HUB_CAPABILITIES_EX)
.
Bloc d’état
La pile USB définit Irp-IoStatus.Status> sur STATUS_SUCCESS si la demande réussit. Sinon, la pile USB définit Status sur la condition d’erreur appropriée, telle que STATUS_INVALID_PARAMETER ou STATUS_INSUFFICIENT_RESOURCES. Si le hub n’a pas été démarré ou n’est pas fonctionnel, la requête retourne STATUS_UNSUCCESSFUL.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista et versions ultérieures. |
En-tête | usbioctl.h (include Usbioctl.h) |