struttura USB_NODE_CONNECTION_INFORMATION (usbioctl.h)
La struttura USB_NODE_CONNECTION_INFORMATION viene usata con la richiesta di IOCTL_USB_GET_NODE_CONNECTION_INFORMATION per recuperare informazioni su una porta USB e un dispositivo connesso.
Sintassi
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;
Members
ConnectionIndex
Valore maggiore o uguale a 1 che specifica il numero della porta.
DeviceDescriptor
Struttura USB_DEVICE_DESCRIPTOR che segnala il descrittore del dispositivo USB restituito dal dispositivo collegato durante l'enumerazione.
CurrentConfigurationValue
Contiene l'ID usato con la richiesta SetConfiguration per specificare la configurazione corrente del dispositivo connesso alla porta indicata. Per una spiegazione di questo valore, vedere la sezione 9.4.7 nella specifica Universal Serial Bus 3.1 disponibile nella raccolta documenti USB.
LowSpeed
Valore booleano che indica se la porta e il dispositivo connesso funzionano a bassa velocità. TRUE indica che la porta e il dispositivo connesso sono attualmente operativi a bassa velocità. FALSE indica in caso contrario.
DeviceIsHub
Valore booleano che indica se il dispositivo collegato alla porta è un hub. Se TRUE, il dispositivo collegato alla porta è un hub. Se FALSE, il dispositivo non è un hub.
DeviceAddress
Indirizzo relativo al bus assegnato tramite USB del dispositivo collegato alla porta.
NumberOfOpenPipes
Numero di pipe USB aperte associate alla porta.
ConnectionStatus
Enumeratore tipizzato USB_CONNECTION_STATUS che indica lo stato della connessione.
PipeList[0]
Matrice di strutture USB_PIPE_INFO che descrive le pipe aperte associate alla porta. Le descrizioni delle pipe includono l'offset di pianificazione della pipe e il descrittore di endpoint associato. Queste informazioni possono essere usate per calcolare l'utilizzo della larghezza di banda.
Commenti
Se non è presente alcun dispositivo connesso alla porta USB, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION restituisce solo informazioni sulla porta. Se un dispositivo è connesso alla porta, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION restituisce informazioni sulla porta e sul dispositivo connesso.
La struttura USB_NODE_CONNECTION_INFORMATION_EX è una versione estesa di USB_NODE_CONNECTION_INFORMATION. Le due strutture sono identiche, ad eccezione di un membro. In USB_NODE_CONNECTION_INFORMATION_EX, il membro LowSpeed viene sostituito dal membro Speed . LowSpeed è un valore booleano, quindi quando è TRUE, il dispositivo è a bassa velocità. Quando è FALSE, il dispositivo è ad alta velocità o a tutta velocità. Pertanto, la struttura USB_NODE_CONNECTION_INFORMATION non può distinguere tra velocità elevate e intere.
Il membro Speed della struttura USB_NODE_CONNECTION_INFORMATION_EX è un UCHAR e può specificare uno qualsiasi dei valori dell'enumeratore USB_DEVICE_SPEED .
Requisiti
Requisito | Valore |
---|---|
Intestazione | usbioctl.h (include Usbioctl.h) |
Vedi anche
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX