IOCTL_INTERNAL_USB_GET_HUB_NAME IOCTL (usbioctl.h)

La requête d’E/S IOCTL_INTERNAL_USB_GET_HUB_NAME est utilisée par les pilotes pour récupérer le nom symbolique UNICODE de l’PDO cible si l’objet PDO est destiné à 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 le PDO 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 de 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) passée 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 l’état d’erreur approprié. Il définit Irp->IoStatus.Information le nombre d’octets requis pour contenir la structure USB_ROOT_HUB_NAME. Si la requête échoue, le pilote peut utiliser ces informations pour soumettre à nouveau la requête avec une mémoire tampon suffisamment importante.

Exigences

Exigence Valeur
d’en-tête usbioctl.h (include Usbioctl.h)

Voir aussi

USB_ROOT_HUB_NAME