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 要求搭配使用的識別碼,以指定連線到指定埠之裝置的目前組態。 如需此值的說明,請參閱 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 結構無法區分高速和全速。
SpeedUSB_NODE_CONNECTION_INFORMATION_EX 結構的成員是 UCHAR,它可以指定 USB_DEVICE_SPEED 列舉值的任何值。
要求 | 價值 |
---|---|
標頭 | usbioctl.h (包括 Usbioctl.h) |
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX