fonction USBD_ParseDescriptors (usbdlib.h)

Le USBD_ParseDescriptors routine recherche un descripteur de configuration donné et retourne un pointeur vers le premier descripteur qui correspond aux critères de recherche.

Syntaxe

PUSB_COMMON_DESCRIPTOR USBD_ParseDescriptors(
  [in] PVOID DescriptorBuffer,
  [in] ULONG TotalLength,
  [in] PVOID StartPosition,
  [in] LONG  DescriptorType
);

Paramètres

[in] DescriptorBuffer

Pointeur vers un descripteur de configuration qui contient le descripteur pour lequel rechercher.

[in] TotalLength

Spécifie la taille, en octets, de la mémoire tampon pointée par DescriptorBuffer.

[in] StartPosition

Pointeur vers l’adresse dans le descripteur de configuration, fourni dans DescriptorBuffer, à partir duquel commencer la recherche. Pour effectuer une recherche à partir du début du descripteur de configuration, les paramètres DescriptorBuffer et StartPosition doivent correspondre à la même adresse.

[in] DescriptorType

Spécifie le code de type de descripteur attribué par USB. Les valeurs suivantes sont valides pour les types de descripteurs définis par USB :

USB_STRING_DESCRIPTOR_TYPE

Spécifie que le descripteur recherché est un descripteur de chaîne.

USB_INTERFACE_DESCRIPTOR_TYPE

Spécifie que le descripteur recherché est un descripteur d’interface.

USB_ENDPOINT_DESCRIPTOR_TYPE

Spécifie que le descripteur recherché est un descripteur de point de terminaison.

Valeur retournée

USBD_ParseDescriptors retourne un pointeur vers une structure USB_COMMON_DESCRIPTOR qui est la tête du premier descripteur qui correspond aux critères de recherche donnés, ou null est retourné si aucune correspondance n’est trouvée :

Remarques

Cette structure est utilisée pour contenir une partie d’un descripteur, afin que l’appelant de USBD_ParseDescriptors puisse déterminer la structure appropriée à utiliser pour accéder aux données restantes dans le descripteur. Chaque type de descripteur a ces champs au début des données et les appelants peuvent utiliser les membres bLength et bDescriptorType pour identifier correctement le type de ce descripteur.

Lorsque cette routine analyse le descripteur de configuration à la recherche du descripteur qui correspond aux critères de recherche, elle retourne la première correspondance, mettant fin à la recherche.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête usbdlib.h (inclure Usbdlib.h)
Bibliothèque Usbd.lib
IRQL < DISPATCH_LEVEL

Voir aussi

Informations de référence sur la programmation du pilote de périphérique USB