IOCTL_INTERNAL_USB_GET_HUB_NAME IOCTL (usbioctl.h)
Le IOCTL_INTERNAL_USB_GET_HUB_NAME demande d’E/S est utilisé par les pilotes pour récupérer le nom symbolique UNICODE de l’AOP cible si l’AOP correspond à un hub. Sinon, une chaîne NULL est retournée.
Les pilotes peuvent utiliser le nom symbolique pour récupérer des informations supplémentaires sur le hub via des demandes de contrôle d’E/S en mode utilisateur et des appels WMI.
IOCTL_INTERNAL_USB_GET_HUB_NAME est une demande de contrôle d’E/S en mode noyau. Cette requête cible l’AOP du hub USB. Cette demande doit être envoyée à un IRQL de PASSIVE_LEVEL.
Code principal
IRP_MJ_INTERNAL_DEVICE_CONTROL
Mémoire tampon d'entrée
Irp->AssociatedIrp.SystemBuffer pointe vers une structure USB_HUB_NAME .
Longueur de la mémoire tampon d’entrée
Parameters.DeviceIoControl.OutputBufferLength est la longueur de la mémoire tampon (en octets) transmise dans le champ Irp-AssociatedIrp.SystemBuffer>.
Mémoire tampon de sortie
Irp->AssociatedIrp.SystemBuffer est rempli avec le nom symbolique du hub racine.
Longueur de la mémoire tampon de sortie
Longueur du nom symbolique du hub racine.
Bloc d’état
Un pilote de niveau inférieur définit Irp-IoStatus.Status> sur STATUS_SUCCESS ou le status d’erreur approprié. Il définit Irp-IoStatus.Information> sur le nombre d’octets requis pour contenir la structure USB_ROOT_HUB_NAME. Si la demande échoue, le pilote peut utiliser ces informations pour soumettre à nouveau la demande avec une mémoire tampon suffisamment grande.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | usbioctl.h (inclure Usbioctl.h) |