Condividi tramite


funzione USBD_ValidateConfigurationDescriptor (usbdlib.h)

La routine USBD_ValidateConfigurationDescriptor convalida tutti i descrittori restituiti da un dispositivo in risposta a una richiesta del descrittore di configurazione.

Sintassi

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

Parametri

[in] ConfigDesc

Puntatore a un descrittore di configurazione che include tutti i descrittori di interfaccia, endpoint, fornitore e classe recuperati da un dispositivo USB.

[in] BufferLength

Dimensioni, in byte, del descrittore di configurazione da convalidare.

[in] Level

Livello di convalida da eseguire. Di seguito sono riportati i valori validi:

  • 1-Convalida di base dell'intestazione del descrittore di configurazione.
  • 2-Convalida completa del descrittore di configurazione, inclusa la verifica di indirizzi endpoint non validi, numeri di interfaccia, strutture del descrittore, impostazioni alternative dell'interfaccia, numero di interfacce e bLength campi di tutti i descrittori.
  • 3-Oltre alla convalida per i livelli 1 e 2, il livello 3 convalida più convalida il numero di endpoint in ogni interfaccia, applica il descrittore della specifica USB bLength dimensioni e verifica che tutti i numeri di interfaccia siano in ordine sequenziale.

[out] Offset

Offset all'interno del descrittore di configurazione in cui la convalida non è riuscita. Valido solo quando viene restituito uno stato diverso da USBD_STATUS_SUCCESS.

[in, optional] Tag

Tag del pool usato da USBD_ValidateConfigurationDescriptor durante l'allocazione della memoria.

Valore restituito

USBD_STATUS_SUCCESS o codice di errore USBD appropriato se la convalida non è riuscita.

Fabbisogno

Requisito Valore
client minimo supportato Disponibile in Windows Vista e nei sistemi operativi successivi.
piattaforma di destinazione Universale
intestazione usbdlib.h (include Usbdlib.h)
libreria Usbd.lib
IRQL PASSIVE_LEVEL

Vedere anche

riferimento alla programmazione dei driver di dispositivo USB