Compartilhar via


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 for 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 quiser que o valor de configuração alternativo seja um critério de pesquisa, esse parâmetro deverá ser definido como -1.

[in] InterfaceClass

Especifica o identificador definido pelo dispositivo ou USB para a classe de interface da interface a ser recuperada. Se o chamador não quiser 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 pelo dispositivo ou USB para a subclasse da interface a ser recuperada. Se o chamador não quiser 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 recuperado. Se o chamador não quiser que o valor do protocolo de interface seja um critério de pesquisa, esse parâmetro deverá ser definido como -1.

Valor de retorno

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.

Observações

Os chamadores podem especificar mais de um dos critérios de pesquisa (InterfaceNumber, AlternateSetting, InterfaceClass, InterfaceSubClass e InterfaceProtocol) ao usar essa rotina para encontrar uma interface dentro de um descritor de configuração. Para obter o 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
da Plataforma de Destino Universal
cabeçalho usbdlib.h (inclua Usbdlib.h)
biblioteca Usbd.lib
IRQL < DISPATCH_LEVEL

Consulte também

referência de programação do driver de dispositivo USB

USB_CONFIGURATION_DESCRIPTOR