Дескрипторы на составных USB-устройствах

Как описано в спецификации USB, каждое USB-устройство предоставляет набор иерархических дескрипторов, определяющих его функциональность. На верхнем уровне каждое устройство имеет один или несколько дескрипторов конфигурации USB, каждый из которых имеет один или несколько дескрипторов интерфейса. Дополнительные сведения о дескрипторов конфигурации USB см. в разделе Дескрипторы конфигурации USB. Конфигурации являются взаимоисключающими, поэтому для работы одновременно можно выбрать только одну конфигурацию.

До Windows Vista драйверы, предоставляемые Корпорацией Майкрософт, выбирают только конфигурацию 1. В Windows Vista и более поздних версиях Windows можно задать значение реестра, чтобы указать, какую конфигурацию будет использовать универсальный родительский драйвер USB (Usbccgp.sys). Дополнительные сведения о выборе конфигурации устройства на составных устройствах см. в статье Выбор конфигурации для USB-устройства.

В конфигурации интерфейсы и коллекции интерфейсов управляются независимо. Каждый интерфейс представлен на уровне дескриптора уникальным значением в элементе bInterfaceNumber его USB_INTERFACE_DESCRIPTOR структуры.

Функция интерфейса обозначается элементами bInterfaceClass, bInterfaceSubClass и bInterfaceProtocol одной структуры, а также дескрипторами класса, которые могут следовать за ней.

Дополнительные сведения о дескрипторов см. в разделе Дескрипторы USB.

Универсальный родительский драйвер USB (Usbccgp.sys)
USB-драйверы, предоставляемые корпорацией Майкрософт