структура _URB_CONTROL_GET_INTERFACE_REQUEST (usb.h)
Структура _URB_CONTROL_GET_INTERFACE_REQUEST используется драйверами USB-клиента для получения текущего альтернативного параметра интерфейса для интерфейса в текущей конфигурации.
Синтаксис
struct _URB_CONTROL_GET_INTERFACE_REQUEST {
struct _URB_HEADER Hdr;
PVOID Reserved;
ULONG Reserved0;
ULONG TransferBufferLength;
PVOID TransferBuffer;
PMDL TransferBufferMDL;
struct _URB *UrbLink;
struct _URB_HCD_AREA hca;
UCHAR Reserved1[4];
USHORT Interface;
USHORT Reserved2;
};
Члены
Hdr
Указатель на структуру _URB_HEADER, указывающую сведения о заголовке URB.
функции Hdr.Function должна быть URB_FUNCTION_GET_INTERFACE, а hdr.Length должна быть равной sizeof(_URB_CONTROL_GET_INTERFACE_REQUEST)
.
Reserved
Скрытный. Не используйте.
Reserved0
Скрытный. Не используйте.
TransferBufferLength
Должно быть 1. Этот элемент задает длину буфера, указанного в TransferBuffer или описанного в TransferBufferMDL. Драйвер контроллера узла возвращает количество байтов, отправленных или считываемых из канала в этом элементе.
TransferBuffer
Указатель на буфер резидента для передачи или null, если MDL предоставляется в TransferBufferMDL. Драйвер шины возвращает один байт, указывающий индекс текущего альтернативного параметра для интерфейса.
TransferBufferMDL
Указатель на MDL, описывающий буфер резидента или значение NULL, если буфер предоставляется в TransferBuffer. Драйвер шины возвращает один байт, указывающий индекс текущего альтернативного параметра для интерфейса. Этот MDL-файл должен быть выделен из непагрегированного пула.
UrbLink
Скрытный. Не используйте.
hca
Скрытный. Не используйте.
Reserved1[4]
Скрытный. Не используйте.
Interface
Задает определяемый устройством индекс извлекаемого дескриптора интерфейса.
Reserved2
Скрытный. Не используйте.
Замечания
Зарезервированные элементы этой структуры должны рассматриваться как непрозрачные и зарезервированы для использования системы.
Требования
Требование | Ценность |
---|---|
заголовка | usb.h (включая usb.h) |