структура _URB_OS_FEATURE_DESCRIPTOR_REQUEST (usb.h)

Структура _URB_OS_FEATURE_DESCRIPTOR_REQUEST используется драйвером КОНЦЕНТРАТОРа USB для получения дескрипторов компонентов ОС Майкрософт с USB-устройства или интерфейса на USB-устройстве.

Синтаксис

struct _URB_OS_FEATURE_DESCRIPTOR_REQUEST {
  struct _URB_HEADER   Hdr;
  PVOID                Reserved;
  ULONG                Reserved0;
  ULONG                TransferBufferLength;
  PVOID                TransferBuffer;
  PMDL                 TransferBufferMDL;
  struct _URB          *UrbLink;
  struct _URB_HCD_AREA hca;
  UCHAR                Recipient : 5;
  UCHAR                Reserved1 : 3;
  UCHAR                Reserved2;
  UCHAR                InterfaceNumber;
  UCHAR                MS_PageIndex;
  USHORT               MS_FeatureDescriptorIndex;
  USHORT               Reserved3;
};

Члены

Hdr

Указатель на структуру _URB_HEADER , указывающую сведения о заголовке URB. Функция Hdr.Function должна URB_FUNCTION_GET_MS_FEATURE_DESCRIPTOR. Hdr.Length должен иметь значение sizeof(_URB_OS_FEATURE_DESCRIPTOR_REQUEST).

Reserved

Reserved0

TransferBufferLength

Указывает длину (в байтах) буфера, указанного в TransferBuffer или описанного в разделе TransferBufferMDL. Драйвер хост-контроллера возвращает число байтов, прочитанных в этом элементе. Текущая реализация этой функции ограничивает максимальный размер дескриптора компонентов MS OS 4 килобайтами.

TransferBuffer

Указатель на резидентный буфер для передачи или имеет значение NULL , если MDL предоставляется в TransferBufferMDL.

TransferBufferMDL

Указатель на MDL, описывающий резидентный буфер, или имеет значение NULL , если буфер предоставлен в TransferBuffer. Этот MDL-файл должен быть выделен из непагрегированного пула.

UrbLink

Зарезервировано. Не используется.

hca

Recipient

Указывает, является ли получатель USB-устройством или интерфейсом на USB-устройстве. Необходимо указать одно из следующих значений:

  • 0 означает, что USB-устройство является получателем запроса.
  • Значение 1 указывает, что получателем запроса является ИНТЕРФЕЙС USB.
  • Значение 2 указывает, что получателем запроса является конечная точка USB.

Reserved1

Reserved2

InterfaceNumber

Указывает номер интерфейса, который является получателем запроса, если значение элемента Recipient равно 1. Значение должно быть равно 0, если получателем является USB-устройство.

MS_PageIndex

Должен иметь значение 0. Индекс страницы 64K возвращаемого дескриптора компонентов ОС MS. Текущая реализация поддерживает только максимальный размер дескриптора 4 КБ.

MS_FeatureDescriptorIndex

Индекс для запрашиваемого дескриптора компонентов ОС MS.

Reserved3

Комментарии

Зарезервированные элементы этой структуры должны рассматриваться как непрозрачные и зарезервированы для использования системой.

Требования

Требование Значение
Минимальная версия клиента Доступно в Операционных системах Windows XP и более поздних версий.
Верхняя часть usb.h (включая Usb.h)

См. также раздел

URB

_URB_HEADER