Partager via


USB_NODE_CONNECTION_INFORMATION structure (usbioctl.h)

La structure USB_NODE_CONNECTION_INFORMATION est utilisée avec la demande de IOCTL_USB_GET_NODE_CONNECTION_INFORMATION pour récupérer des informations sur un port USB et un appareil connecté.

Syntaxe

typedef struct _USB_NODE_CONNECTION_INFORMATION {
  ULONG                 ConnectionIndex;
  USB_DEVICE_DESCRIPTOR DeviceDescriptor;
  UCHAR                 CurrentConfigurationValue;
  BOOLEAN               LowSpeed;
  BOOLEAN               DeviceIsHub;
  USHORT                DeviceAddress;
  ULONG                 NumberOfOpenPipes;
  USB_CONNECTION_STATUS ConnectionStatus;
  USB_PIPE_INFO         PipeList[0];
} USB_NODE_CONNECTION_INFORMATION, *PUSB_NODE_CONNECTION_INFORMATION;

Membres

ConnectionIndex

Valeur supérieure ou égale à 1 qui spécifie le numéro du port.

DeviceDescriptor

Structure USB_DEVICE_DESCRIPTOR qui signale le descripteur de périphérique USB retourné par l’appareil attaché pendant l’énumération.

CurrentConfigurationValue

Contient l’ID utilisé avec la demande SetConfiguration pour spécifier la configuration actuelle de l’appareil connecté au port indiqué. Pour une explication de cette valeur, consultez la section 9.4.7 de la spécification Universal Serial Bus 3.1 disponible dans la bibliothèque de documents USB.

LowSpeed

Valeur booléenne qui indique si le port et son appareil connecté fonctionnent à faible vitesse. TRUE indique que le port et son appareil connecté fonctionnent actuellement à faible vitesse. FALSE indique le contraire.

DeviceIsHub

Valeur booléenne qui indique si l’appareil attaché au port est un hub. Si la valeur est TRUE, l’appareil attaché au port est un hub. Si la valeur est FALSE, l’appareil n’est pas un hub.

DeviceAddress

Adresse relative au bus affectée par USB de l’appareil qui est attaché au port.

NumberOfOpenPipes

Nombre de canaux USB ouverts associés au port.

ConnectionStatus

Énumérateur USB_CONNECTION_STATUS qui indique la connexion status.

PipeList[0]

Tableau de structures USB_PIPE_INFO qui décrit les canaux ouverts associés au port. Les descriptions de canal incluent le décalage de planification du canal et le descripteur de point de terminaison associé. Ces informations peuvent être utilisées pour calculer l’utilisation de la bande passante.

Remarques

Si aucun appareil n’est connecté au port USB, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION retourne uniquement des informations sur le port. Si un appareil est connecté au port, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION retourne des informations sur le port et l’appareil connecté.

La structure USB_NODE_CONNECTION_INFORMATION_EX est une version étendue de USB_NODE_CONNECTION_INFORMATION. Les deux structures sont identiques, à l’exception d’un membre. Dans USB_NODE_CONNECTION_INFORMATION_EX, le membre LowSpeed est remplacé par le membre Speed . LowSpeed est une valeur booléenne. Par conséquent, lorsqu’elle a la valeur TRUE, l’appareil est à faible vitesse. Lorsqu’il a la valeur FALSE, l’appareil est à haute vitesse ou à pleine vitesse. Ainsi, la structure USB_NODE_CONNECTION_INFORMATION ne peut pas faire la différence entre les vitesses élevées et les vitesses complètes.

Le membre Speed de la structure USB_NODE_CONNECTION_INFORMATION_EX est un UCHAR et peut spécifier n’importe quelle valeur de l’énumérateur USB_DEVICE_SPEED .

Configuration requise

Condition requise Valeur
En-tête usbioctl.h (include Usbioctl.h)

Voir aussi

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX

USB Structures

USB_CONNECTION_STATUS

USB_DEVICE_DESCRIPTOR

USB_DEVICE_SPEED

USB_NODE_CONNECTION_INFORMATION_EX

USB_PIPE_INFO