объединение USB_PROTOCOLS (usbioctl.h)

Объединение USB_PROTOCOLS используется для отправки сообщений о протоколах передачи сигналов универсальной последовательной шины (USB), поддерживаемых портом.

Поддерживаемые протоколы извлекаются в структуре USB_NODE_CONNECTION_INFORMATION_EX_V2 запросом элемента управления IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 ввода-вывода.

В запросе IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 вызывающий объект указывает побитовую OR одного или нескольких флагов, определенных в USB_PROTOCOLS. После успешного завершения запрос получает флаги, указывающие на протоколы, которые фактически поддерживаются портом.

Синтаксис

typedef union _USB_PROTOCOLS {
  ULONG  ul;
  struct {
    ULONG Usb110 : 1;
    ULONG Usb200 : 1;
    ULONG Usb300 : 1;
    ULONG ReservedMBZ : 29;
  };
} USB_PROTOCOLS, *PUSB_PROTOCOLS;

Члены

ul

Битовая маска, указывающая протоколы USB-сигналов, поддерживаемые портом.

Usb110

Если TRUE, порт поддерживает протоколы, определенные в спецификации USB 1.1. Это означает, что порт поддерживает операции с полной скоростью и низкой скоростью. usb110 всегда true для высокоскоростных портов, так как эти порты поддерживают полноскоростные и низкоскоростные операции с помощью разбиений транзакций и переводчиков транзакций.

Usb200

Если TRUE, порт поддерживает протоколы, определенные спецификацией USB 2.0. Это означает, что порт поддерживает высокоскоростные операции.

Usb300

Если TRUE, порт поддерживает протоколы, определенные спецификацией USB 3.0. Это означает, что порт поддерживает операции SuperSpeed.

ReservedMBZ

Скрытный. Не используйте.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 8
минимальный поддерживаемый сервер Не поддерживается
заголовка usbioctl.h (include Usbioctl.h)

См. также

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2

USB_NODE_CONNECTION_INFORMATION_EX_V2