Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Подпрограмма USBD_ValidateConfigurationDescriptor проверяет все дескрипторы, возвращаемые устройством в ответ на запрос дескриптора конфигурации.
Синтаксис
USBD_STATUS USBD_ValidateConfigurationDescriptor(
[in] PUSB_CONFIGURATION_DESCRIPTOR ConfigDesc,
[in] ULONG BufferLength,
[in] USHORT Level,
[out] PUCHAR *Offset,
[in, optional] ULONG Tag
);
Параметры
[in] ConfigDesc
Указатель на дескриптор конфигурации, включающий все интерфейсы, конечные точки, поставщики и дескрипторы, полученные с USB-устройства.
[in] BufferLength
Размер дескриптора конфигурации в байтах, проверяемого.
[in] Level
Уровень выполняемой проверки. Ниже приведены допустимые значения:
- 1-Базовая проверка заголовка дескриптора конфигурации.
- 2-Полная проверка дескриптора конфигурации, включая проверку недопустимых адресов конечных точек, номеров интерфейсов, структур дескриптора, альтернативных параметров интерфейса, количества интерфейсов и bLength полей всех дескрипторов.
- В дополнение к проверке на уровне 1 и 2, уровень 3 проверяет количество конечных точек в каждом интерфейсе, применяет дескриптор спецификации USB bLength размеров и проверяет, что все номера интерфейсов находятся в последовательном порядке.
[out] Offset
Смещение в дескрипторе конфигурации, в котором не удалось выполнить проверку. Допустимо только в том случае, если возвращается состояние, отличное от USBD_STATUS_SUCCESS.
[in, optional] Tag
Тег пула, используемый USBD_ValidateConfigurationDescriptor при выделении памяти.
Возвращаемое значение
USBD_STATUS_SUCCESS или соответствующий код ошибки USBD при сбое проверки.
Требования
| Требование | Ценность |
|---|---|
| минимальные поддерживаемые клиентские | Доступно в Windows Vista и более поздних операционных системах. |
| целевая платформа | Всеобщий |
| заголовка | usbdlib.h (include Usbdlib.h) |
| библиотеки | Usbd.lib |
| IRQL | PASSIVE_LEVEL |