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)

Voir aussi

USB_ROOT_HUB_NAME