структура 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 для указания текущей конфигурации устройства, подключенного к указанному порту. Объяснение этого значения см. в разделе 9.4.7 спецификации универсальной последовательной шины 3.1, доступной в библиотеке документов USB.

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 структура не может различать высокие и полные скорости.

Элемент Speedструктуры USB_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

Структуры USB

USB_CONNECTION_STATUS

USB_DEVICE_DESCRIPTOR

USB_DEVICE_SPEED

USB_NODE_CONNECTION_INFORMATION_EX

USB_PIPE_INFO