Compartilhar via


função USBD_ValidateConfigurationDescriptor (usbdlib.h)

A rotina USBD_ValidateConfigurationDescriptor valida todos os descritores retornados por um dispositivo em sua resposta a uma solicitação de descritor de configuração.

Sintaxe

USBD_STATUS USBD_ValidateConfigurationDescriptor(
  [in]           PUSB_CONFIGURATION_DESCRIPTOR ConfigDesc,
  [in]           ULONG                         BufferLength,
  [in]           USHORT                        Level,
  [out]          PUCHAR                        *Offset,
  [in, optional] ULONG                         Tag
);

Parâmetros

[in] ConfigDesc

Ponteiro para um descritor de configuração que inclui todos os descritores específicos de interface, ponto de extremidade, fornecedor e classe recuperados de um dispositivo USB.

[in] BufferLength

Tamanho, em bytes, do descritor de configuração que está sendo validado.

[in] Level

Nível de validação a ser executado. Veja a seguir valores válidos:

  • 1-Validação básica do cabeçalho do descritor de configuração.
  • 2-Validação completa do descritor de configuração, incluindo verificação de endereços de ponto de extremidade inválidos, números de interface, estruturas de descritor, configurações alternativas de interface, número de interfaces e campos de bLength de todos os descritores.
  • 3-Além da validação para os níveis 1 e 2, o nível 3 valida mais valida o número de pontos de extremidade em cada interface, impõe o descritor da especificação USB tamanhos de bLength e verifica se todos os números de interface estão em ordem sequencial.

[out] Offset

Deslocamento no descritor de configuração em que a validação falhou. Válido somente quando um status diferente de USBD_STATUS_SUCCESS é retornado.

[in, optional] Tag

Marca de pool usada por USBD_ValidateConfigurationDescriptor ao alocar memória.

Valor de retorno

USBD_STATUS_SUCCESS ou código de erro USBD apropriado se a validação falhar.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows Vista e em sistemas operacionais posteriores.
da Plataforma de Destino Universal
cabeçalho usbdlib.h (inclua Usbdlib.h)
biblioteca Usbd.lib
IRQL PASSIVE_LEVEL

Consulte também

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