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.
IRP_MJ_INTERNAL_DEVICE_CONTROL
Irp->AssociatedIrp.SystemBuffer pointe vers une structure de USB_HUB_NAME.
Parameters.DeviceIoControl.OutputBufferLength est la longueur de la mémoire tampon (en octets) passée dans le champ Irp->AssociatedIrp.SystemBuffer.
Irp->AssociatedIrp.SystemBuffer est rempli avec le nom symbolique du hub racine.
Longueur du nom symbolique du hub racine.
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.
Exigence | Valeur |
---|---|
d’en-tête | usbioctl.h (include Usbioctl.h) |