функция USBD_IsInterfaceVersionSupported (usbdlib.h)

Подпрограмма USBD_IsInterfaceVersionSupported вызывается драйвером USB-клиента, чтобы проверка, поддерживает ли базовый стек USB-драйверов определенную версию интерфейса USBD.

Синтаксис

BOOLEAN USBD_IsInterfaceVersionSupported(
  [in] USBD_HANDLE USBDHandle,
  [in] ULONG       USBDInterfaceVersion
);

Параметры

[in] USBDHandle

Дескриптор USBD, полученный драйвером клиента при предыдущем вызове процедуры USBD_CreateHandle .

[in] USBDInterfaceVersion

Значение LONG, представляющее версию интерфейса USBD для проверка в стеке драйверов USB. Возможные значения: USBD_INTERFACE_VERSION_602 или USBD_INTERFACE_VERSION_600. Дополнительные сведения см. в подразделе "Примечания".

Возвращаемое значение

USBD_IsInterfaceVersionSupported возвращает значение TRUE, если указанная версия интерфейса USBD поддерживается стеком драйверов USB; Значение FALSE в противном случае. Дополнительные сведения см. в подразделе "Примечания".

Комментарии

Стек USB-драйверов, загруженный для устройства, зависит от версии Windows, оборудования хост-контроллера и USB-устройства. Windows 7 и более ранние версии Windows поддерживают USBD_INTERFACE_VERSION_600. Версии интерфейса USBD, поддерживаемые стеком драйверов Windows 8, USBD_INTERFACE_VERSION_602 и USBD_INTERFACE_VERSION_600. Драйверу USB-клиента редко требуется знать о версии интерфейса базового стека драйверов. В случаях, когда такие сведения требуются, драйвер клиента может вызвать подпрограмму USBD_IsInterfaceVersionSupported, чтобы проверка, поддерживается ли определенная версия интерфейса базовым стеком драйверов. Например, клиентский драйвер вызывает USBD_IsInterfaceVersionSupported , чтобы определить, поддерживает ли стек драйверов USBD_INTERFACE_VERSION_602. Если она поддерживает такую версию, подпрограмма возвращает значение TRUE.

Подпрограмме требуется действительный дескриптор USBD (полученный в предыдущем вызове USBD_CreateHandle). USBD_IsInterfaceVersionSupported могут вызываться только клиентскими драйверами, предназначенными для Windows Vista и более поздних версий Windows. Чтобы успешно вызывать подпрограммы, эти клиентские драйверы должны получить комплект драйверов Windows (WDK) для Windows 8. USBD_IsInterfaceVersionSupported заменяет подпрограмму USBD_GetUSBDIVersion .

Версия интерфейса USBD не указывает на возможности, поддерживаемые стеком драйверов USB. Например, так как базовый стек драйверов поддерживает USBD_INTERFACE_VERSION_602, драйвер клиента не должен предполагать, что драйвер может использовать возможность статических потоков. Это связано с тем, что, несмотря на то, что стек драйверов поддерживает эти возможности, оборудование хост-контроллера или USB-устройство могут не поддерживать потоки. Чтобы определить, поддерживает ли стек usb-драйверов определенную возможность, вызовите USBD_QueryUsbCapability.

Требования

Требование Значение
Минимальная версия клиента Требуется WDK для Windows 8. Предназначен для Windows Vista и более поздних версий операционной системы Windows.
Целевая платформа Персональный компьютер
Верхняя часть usbdlib.h
Библиотека Usbdex.lib
IRQL PASSIVE_LEVEL