Поделиться через


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

Структура _URB_CONTROL_FEATURE_REQUEST используется драйверами USB-клиента для задания или очистки функций на устройстве, интерфейсе или конечной точке.

Синтаксис

struct _URB_CONTROL_FEATURE_REQUEST {
  struct _URB_HEADER   Hdr;
  PVOID                Reserved;
  ULONG                Reserved2;
  ULONG                Reserved3;
  PVOID                Reserved4;
  PMDL                 Reserved5;
  struct _URB          *UrbLink;
  struct _URB_HCD_AREA hca;
  USHORT               Reserved0;
  USHORT               FeatureSelector;
  USHORT               Index;
  USHORT               Reserved1;
};

Члены

Hdr

Указатель на структуру _URB_HEADER, указывающую сведения о заголовке URB. hdr.Function указывает либо набор, либо четкую операцию функции, выполнять на устройстве, интерфейсе, конечной точке или другом нестандартном компоненте. hdr.Function должны иметь одно из следующих значений:

hdr.Length должен быть равен sizeof(_URB_CONTROL_FEATURE_REQUEST).

Reserved

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

Reserved2

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

Reserved3

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

Reserved4

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

Reserved5

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

UrbLink

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

hca

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

Reserved0

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

FeatureSelector

Указывает код функции, определяемый USB, для очистки или установки. Использование недопустимого кода компонента, не может быть задано или не может быть снято, приведет к остановке целевого объекта. Драйвер шины копирует значение в элементе FeatureSelector в поле wValue пакета установки.

Index

Указывает определяемый устройством индекс, возвращаемый успешным запросом конфигурации, если запрос предназначен для конечной точки или интерфейса. В противном случае индекса должно быть равно нулю. Драйвер шины копирует значение в элементе индекса в поле wIndex пакета установки.

Reserved1

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

Замечания

Драйверы могут использовать подпрограмму службы UsbBuildFeatureRequest для форматирования этого URB.

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

Когда драйвер вооружит USB-устройство для удаленного пробуждения с запросом IRP_MN_WAIT_WAKE, драйвер USB-шины автоматически устанавливает функцию удаленного пробуждения на устройстве. UrB компонента управления не требуется.

Аналогичным образом, когда водитель выдает URB с типом функции URB_FUNCTION_SYNC_RESET_PIPE_AND_CLEAR_STALL на канал, водитель шины автоматически очищает функцию остановки конечной точки канала. Драйверу не нужно отправлять URB функции управления в канал для очистки конечной точки.

Требования

Требование Ценность
заголовка usb.h (включая usb.h)

См. также

URB

СТРУКТУРЫ USB

_URB_HEADER