IOCTL_USB_GET_NODE_CONNECTION_NAME IOCTL (usbioctl.h)
La demande de contrôle d’E/S IOCTL_USB_GET_NODE_CONNECTION_NAME est utilisée avec la structure USB_NODE_CONNECTION_NAME pour récupérer le nom de lien symbolique du hub attaché au port en aval.
IOCTL_USB_GET_NODE_CONNECTION_NAME est une demande de contrôle d’E/S en mode utilisateur. Cette requête cible l’appareil du hub USB (GUID_DEVINTERFACE_USB_HUB).
Code principal
Mémoire tampon d’entrée
Le membre AssociatedIrp.SystemBu ffer pointe vers une structure USB_NODE_CONNECTION_NAME. Lors de l’entrée, le ConnectionIndex membre de cette structure doit indiquer le nombre de ports à vérifier pour un hub attaché.
Longueur de la mémoire tampon d’entrée
Taille d’une structure USB_NODE_CONNECTION_NAME.
Mémoire tampon de sortie
AssociatedIrp.SystemBuffer pointe vers une structure USB_NODE_CONNECTION_NAME. En sortie, cette structure contient le nom symbolique du hub attaché dans le membre hubName. Si aucun hub n’est attaché, le hub n’a pas de lien symbolique ou si l’appareil attaché n’est pas un hub, HubName[0] contient une valeur de UNICODE_NULL.
Longueur de la mémoire tampon de sortie
Le membre Parameters.DeviceIoControl.OutputBufferLength contient la taille, en octets, de l’ensemble de la structure USB_NODE_CONNECTION_NAME.
Bloc d’état
La pile USB définit Irp->IoStatus.Status sur STATUS_SUCCESS si la requête réussit. La demande signale la réussite, même si aucun hub n’est attaché, le hub attaché n’a pas de lien symbolique ou l’appareil attaché n’est pas un hub.
Sinon, la pile USB définit 'état à la condition d’erreur appropriée, telle que STATUS_INVALID_PARAMETER ou STATUS_INSUFFICIENT_RESOURCES.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | usbioctl.h (include Usbioctl.h) |