Partager via


IOCTL_USB_GET_NODE_CONNECTION_INFORMATION IOCTL (usbioctl.h)

La requête IOCTL_USB_GET_NODE_CONNECTION_INFORMATION récupère des informations sur le port USB indiqué et l’appareil attaché au port, s’il en existe un.

Les pilotes clients doivent envoyer cette IOCTL à un irQL de PASSIVE_LEVEL.

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION 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

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée

Le membre AssociatedIrp.SystemBuffer pointe vers une structure USB_NODE_CONNECTION_INFORMATION allouée par l’utilisateur qui décrit la connexion. Lors de l’entrée, le ConnectionIndex membre de cette structure contient le numéro de port.

Longueur de la mémoire tampon d’entrée

Taille d’une structure USB_NODE_CONNECTION_INFORMATION.

Mémoire tampon de sortie

En sortie, le membre Parameters.DeviceIoControl.OutputBufferLength contient la taille des données de sortie. Cette taille est variable, car elle dépend du nombre de canaux associés au port.

AssociatedIrp.SystemBuffer pointe vers une structure USB_NODE_CONNECTION_INFORMATION allouée par l’utilisateur qui contient les données de sortie.

Longueur de la mémoire tampon de sortie

Taille d’une structure USB_NODE_CONNECTION_INFORMATION.

Bloc d’état

La pile USB définit Irp->IoStatus.Status sur STATUS_SUCCESS si la requête réussit. Sinon, la pile USB définit 'état à la condition d’erreur appropriée, telle que STATUS_INVALID_PARAMETER ou STATUS_INSUFFICIENT_RESOURCES.

Remarques

La requête IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX est une version étendue de IOCTL_USB_GET_NODE_CONNECTION_INFORMATION. Les deux requêtes sont identiques, sauf que la version étendue de la requête peut signaler des connexions basse, complètes et à haute vitesse, et les rapports de requêtes IOCTL_USB_GET_NODE_CONNECTION_INFORMATION plus anciens ne rapportent que des connexions à faible vitesse et à vitesse totale. Pour plus d’informations sur la différence entre ces deux requêtes, consultez USB_NODE_CONNECTION_INFORMATION et USB_NODE_CONNECTION_INFORMATION_EX.

Exigences

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

Voir aussi

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX

USB_NODE_CONNECTION_INFORMATION

USB_NODE_CONNECTION_INFORMATION_EX