Partager via


IOCTL_USB_GET_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION IOCTL (usbioctl.h)

La requête IOCTL_USB_GET_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION récupère les informations de voie super-vitesse du port USB.

Les pilotes clients doivent envoyer ce IOCTL à un IRQL de PASSIVE_LEVEL.

IOCTL_USB_GET_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION est une demande de contrôle d’E/S en mode utilisateur. Cette requête cible le périphérique hub USB (GUID_DEVINTERFACE_USB_HUB).

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée/sortie

Les mémoires tampons d’entrée et de sortie pointent vers une structure de USB_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION allouée à l’appelant . Lors de l’entrée, le membre ConnectionIndex de cette structure doit contenir un nombre supérieur ou égal à 1 qui indique le nombre du port dont les informations de voie de super-vitesse doivent être signalées. Le conducteur du hub retourne des informations sur la voie à super vitesse dans les autres membres de la structure USB_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION . L’IRP, le membre AssociatedIrp.SystemBuffer pointe vers la structure USB_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION .

À la sortie, la structure USB_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION reçoit des informations sur les voies à super vitesse indiquées par le pilote du hub USB.

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

Taille d’une structure USB_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION .

Bloc d’état

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

Remarques

Voici un exemple qui montre comment récupérer les informations de voie à super vitesse du port USB.

success = DeviceIoControl(hHubDevice,
                          IOCTL_USB_GET_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION,
                          connectionSSPInfo,
                          sizeof(USB_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION),
                          connectionSSPInfo,
                          sizeof(USB_NODE_CONNECTION_SUPERSPEEDPLUS_INFORMATION),
                          &nBytes,
                          NULL);

Configuration requise

Condition requise Valeur
En-tête usbioctl.h

Voir aussi