USB_NODE_CONNECTION_INFORMATION 结构 (usbioctl.h)

USB_NODE_CONNECTION_INFORMATION结构与IOCTL_USB_GET_NODE_CONNECTION_INFORMATION请求一起使用,以检索有关 USB 端口和已连接设备的信息。

语法

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;

成员

ConnectionIndex

一个大于或等于 1 的值,该值指定端口的编号。

DeviceDescriptor

USB_DEVICE_DESCRIPTOR结构,用于报告枚举期间连接设备返回的 USB 设备描述符。

CurrentConfigurationValue

包含用于 SetConfiguration 请求的 ID,用于指定连接到指定端口的设备当前配置。 有关此值的说明,请参阅 USB 文档库中提供的通用串行总线 3.1 规范中的 9.4.7 部分。

LowSpeed

一个布尔值,指示端口及其连接的设备是否以低速运行。 TRUE 表示端口及其连接的设备当前以低速运行。 FALSE 指示否则为 。

DeviceIsHub

一个布尔值,指示连接到端口的设备是否为中心。 如果 为 TRUE,则连接到端口的设备是中心。 如果 为 FALSE,则设备不是中心。

DeviceAddress

连接到端口的设备的 USB 分配的总线相对地址。

NumberOfOpenPipes

与端口关联的打开 USB 管道的数量。

ConnectionStatus

指示连接状态 的USB_CONNECTION_STATUS类型的枚举器。

PipeList[0]

描述与端口关联的开放管道的 USB_PIPE_INFO 结构的数组。 管道说明包括管道的计划偏移量和关联的终结点描述符。 此信息可用于计算带宽使用情况。

注解

如果没有设备连接到 USB 端口, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION 仅返回有关该端口的信息。 如果设备连接到端口, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION 将返回有关端口和已连接设备的信息。

USB_NODE_CONNECTION_INFORMATION_EX 结构是 USB_NODE_CONNECTION_INFORMATION 的扩展版本。 除了一个成员之外,这两个结构是相同的。 在 USB_NODE_CONNECTION_INFORMATION_EX 中, LowSpeed 成员将替换为 Speed 成员。 LowSpeed 是一个布尔值,因此当它为 TRUE 时,设备为低速。 如果为 FALSE,则设备为高速或全速。 因此 ,USB_NODE_CONNECTION_INFORMATION 结构无法区分高速和全速。

USB_NODE_CONNECTION_INFORMATION_EX 结构的 Speed 成员是 UCHAR,它可以指定USB_DEVICE_SPEED枚举器的任何值。

要求

要求
Header usbioctl.h (包括 Usbioctl.h)

另请参阅

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX

USB 结构

USB_CONNECTION_STATUS

USB_DEVICE_DESCRIPTOR

USB_DEVICE_SPEED

USB_NODE_CONNECTION_INFORMATION_EX

USB_PIPE_INFO