Compartir a través de


estructura USB_NODE_CONNECTION_INFORMATION (usbioctl.h)

La estructura USB_NODE_CONNECTION_INFORMATION se usa con la solicitud IOCTL_USB_GET_NODE_CONNECTION_INFORMATION para recuperar información sobre un puerto USB y un dispositivo conectado.

Sintaxis

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;

Miembros

ConnectionIndex

Valor mayor o igual que 1 que especifica el número del puerto.

DeviceDescriptor

Estructura USB_DEVICE_DESCRIPTOR que informa del descriptor de dispositivo USB devuelto por el dispositivo conectado durante la enumeración.

CurrentConfigurationValue

Contiene el identificador usado con la solicitud SetConfiguration para especificar la configuración actual del dispositivo conectado al puerto indicado. Para obtener una explicación de este valor, vea la sección 9.4.7 en la especificación universal de Bus serie 3.1 disponible en la biblioteca de documentos USB.

LowSpeed

Valor booleano que indica si el puerto y su dispositivo conectado funcionan a baja velocidad. TRUE indica que el puerto y su dispositivo conectado funcionan actualmente a una velocidad baja. FALSE indica lo contrario.

DeviceIsHub

Valor booleano que indica si el dispositivo que está conectado al puerto es un concentrador. Si es TRUE, el dispositivo que está conectado al puerto es un concentrador. Si es FALSE, el dispositivo no es un centro.

DeviceAddress

Dirección relativa de bus asignada por USB del dispositivo que está conectado al puerto.

NumberOfOpenPipes

Número de canalizaciones USB abiertas asociadas al puerto.

ConnectionStatus

Enumerador con tipo USB_CONNECTION_STATUS que indica el estado de conexión.

PipeList[0]

Matriz de USB_PIPE_INFO estructuras que describen las canalizaciones abiertas asociadas al puerto. Las descripciones de canalización incluyen el desplazamiento de programación de la canalización y el descriptor de punto de conexión asociado. Esta información se puede usar para calcular el uso del ancho de banda.

Comentarios

Si no hay ningún dispositivo conectado al puerto USB, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION solo devuelve información sobre el puerto. Si un dispositivo está conectado al puerto, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION devuelve información sobre el puerto y el dispositivo conectado.

La estructura USB_NODE_CONNECTION_INFORMATION_EX es una versión extendida de USB_NODE_CONNECTION_INFORMATION. Las dos estructuras son idénticas, excepto para un miembro. En USB_NODE_CONNECTION_INFORMATION_EX, el miembro LowSpeed se reemplaza por el miembro Speed . LowSpeed es un valor booleano, por lo que cuando es TRUE, el dispositivo es de baja velocidad. Cuando es FALSE, el dispositivo es de alta velocidad o velocidad completa. Por lo tanto, la estructura USB_NODE_CONNECTION_INFORMATION no puede diferenciar entre velocidades altas y completas.

El miembro Speed de la estructura USB_NODE_CONNECTION_INFORMATION_EX es un UCHAR y puede especificar cualquiera de los valores del enumerador USB_DEVICE_SPEED .

Requisitos

Requisito Valor
Header usbioctl.h (incluya Usbioctl.h)

Consulte también

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX

Estructuras USB

USB_CONNECTION_STATUS

USB_DEVICE_DESCRIPTOR

USB_DEVICE_SPEED

USB_NODE_CONNECTION_INFORMATION_EX

USB_PIPE_INFO