Condividi tramite


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

Strutture USB

USB_CONNECTION_STATUS

USB_DEVICE_DESCRIPTOR

USB_DEVICE_SPEED

USB_NODE_CONNECTION_INFORMATION_EX

USB_PIPE_INFO