Função USBD_ParseConfigurationDescriptorEx (usbdlib.h)

A rotina USBD_ParseConfigurationDescriptorEx pesquisa um determinado descritor de configuração e retorna um ponteiro para uma interface que corresponde aos critérios de pesquisa fornecidos.

Sintaxe

PUSB_INTERFACE_DESCRIPTOR USBD_ParseConfigurationDescriptorEx(
  [in] PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor,
  [in] PVOID                         StartPosition,
  [in] LONG                          InterfaceNumber,
  [in] LONG                          AlternateSetting,
  [in] LONG                          InterfaceClass,
  [in] LONG                          InterfaceSubClass,
  [in] LONG                          InterfaceProtocol
);

Parâmetros

[in] ConfigurationDescriptor

Ponteiro para um descritor de configuração USB que contém a interface para a qual pesquisar.

[in] StartPosition

Ponteiro para o endereço dentro do descritor de configuração, fornecido em ConfigurationDescriptor, para começar a pesquisar. Para pesquisar desde o início do descritor de configuração, os parâmetros ConfigurationDescriptor e StartPosition devem ser o mesmo endereço.

[in] InterfaceNumber

Especifica o índice definido pelo dispositivo da interface a ser recuperada. Isso deve ser definido como -1 se não deve ser um critério de pesquisa.

[in] AlternateSetting

Especifica o índice de configuração alternativa definido pelo dispositivo da interface a ser recuperada. Se o chamador não desejar que o valor de configuração alternativa seja um critério de pesquisa, esse parâmetro deverá ser definido como -1.

[in] InterfaceClass

Especifica o identificador definido por dispositivo ou USB para a classe de interface da interface a ser recuperada. Se o chamador não desejar que o valor da classe de interface seja um critério de pesquisa, esse parâmetro deverá ser definido como -1.

[in] InterfaceSubClass

Especifica o identificador definido por dispositivo ou USB para a subclasse de interface da interface a ser recuperada. Se o chamador não desejar que o valor da subclasse da interface seja um critério de pesquisa, esse parâmetro deverá ser definido como -1.

[in] InterfaceProtocol

Especifica o identificador definido pelo dispositivo ou USB para o protocolo de interface da interface a ser recuperada. Se o chamador não desejar que o valor do protocolo de interface seja um critério de pesquisa, esse parâmetro deverá ser definido como -1.

Retornar valor

USBD_ParseConfigurationDescriptorEx retorna um ponteiro para o primeiro descritor de interface que corresponde aos critérios de pesquisa fornecidos. Se nenhuma interface corresponder aos critérios de pesquisa, ela retornará NULL.

Comentários

Os chamadores podem especificar mais de um dos critérios de pesquisa (InterfaceNumber, AlternateSetting, InterfaceClass, InterfaceSubClass e InterfaceProtocol) ao usar essa rotina para localizar uma interface em um descritor de configuração. Para obter um código de exemplo, consulte USBD_CreateConfigurationRequestEx.

Quando essa rotina analisa o descritor de configuração que procura o descritor de interface que corresponde aos critérios de pesquisa, ele retorna a primeira correspondência, encerrando a pesquisa. Os chamadores devem especificar quantos critérios de pesquisa forem necessários para localizar a interface desejada.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho usbdlib.h (inclua Usbdlib.h)
Biblioteca Usbd.lib
IRQL < DISPATCH_LEVEL

Confira também

Referência de programação de driver de dispositivo USB

USB_CONFIGURATION_DESCRIPTOR