Partager via


structure USB_NODE_CONNECTION_INFORMATION (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 nombre 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 cette configuration actuelle de l’appareil connecté au port indiqué. Pour obtenir une explication de cette valeur, consultez la section 9.4.7 dans la spécification Universal Serial Bus 3.1 disponible à 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 sinon.

DeviceIsHub

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

DeviceAddress

Adresse relative usb affectée par le bus de l’appareil attaché au port.

NumberOfOpenPipes

Nombre de canaux USB ouverts associés au port.

ConnectionStatus

Énumérateur USB_CONNECTION_STATUS-typé qui indique l’état de la connexion.

PipeList[0]

Tableau de structures USB_PIPE_INFO qui décrivent 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

S’il n’existe aucun appareil 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’il est TRUE, l’appareil est à faible vitesse. Lorsqu’il est FAUX, l’appareil est à haute vitesse ou à pleine vitesse. Ainsi, la structure USB_NODE_CONNECTION_INFORMATION ne peut pas différencier les vitesses élevées et pleines.

Le membre Speed de la structure USB_NODE_CONNECTION_INFORMATION_EX est un UCHAR et peut spécifier l’une des valeurs de l’énumérateur USB_DEVICE_SPEED.

Exigences

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

Voir aussi

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX

structures USB

USB_CONNECTION_STATUS

USB_DEVICE_DESCRIPTOR

USB_DEVICE_SPEED

USB_NODE_CONNECTION_INFORMATION_EX

USB_PIPE_INFO