Share via


USBD_ParseConfigurationDescriptorEx, fonction (usbdlib.h)

La routine USBD_ParseConfigurationDescriptorEx recherche un descripteur de configuration donné et retourne un pointeur vers une interface qui correspond aux critères de recherche donnés.

Syntaxe

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
);

Paramètres

[in] ConfigurationDescriptor

Pointeur vers un descripteur de configuration USB qui contient l’interface à rechercher.

[in] StartPosition

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

[in] InterfaceNumber

Spécifie l’index défini par l’appareil de l’interface à récupérer. Ce paramètre doit être défini sur -1 s’il ne doit pas s’agir d’un critère de recherche.

[in] AlternateSetting

Spécifie l’index de paramètre alternatif défini par l’appareil de l’interface à récupérer. Si l’appelant ne souhaite pas que l’autre valeur de paramètre soit un critère de recherche, ce paramètre doit être défini sur -1.

[in] InterfaceClass

Spécifie l’identificateur défini par le périphérique ou par USB pour la classe d’interface de l’interface à récupérer. Si l’appelant ne souhaite pas que la valeur de la classe d’interface soit un critère de recherche, ce paramètre doit être défini sur -1.

[in] InterfaceSubClass

Spécifie l’identificateur défini par le périphérique ou par USB pour la sous-classe d’interface de l’interface à récupérer. Si l’appelant ne souhaite pas que la valeur de la sous-classe d’interface soit un critère de recherche, ce paramètre doit être défini sur -1.

[in] InterfaceProtocol

Spécifie l’identificateur défini par l’appareil ou par USB pour le protocole d’interface de l’interface à récupérer. Si l’appelant ne souhaite pas que la valeur du protocole d’interface soit un critère de recherche, ce paramètre doit être défini sur -1.

Valeur retournée

USBD_ParseConfigurationDescriptorEx retourne un pointeur vers le premier descripteur d’interface qui correspond aux critères de recherche donnés. Si aucune interface ne correspond aux critères de recherche, elle retourne NULL.

Remarques

Les appelants peuvent spécifier plusieurs critères de recherche (InterfaceNumber, AlternateSetting, InterfaceClass, InterfaceSubClass et InterfaceProtocol) lors de l’utilisation de cette routine pour rechercher une interface dans un descripteur de configuration. Pour obtenir un exemple de code, consultez USBD_CreateConfigurationRequestEx.

Lorsque cette routine analyse le descripteur de configuration à la recherche du descripteur d’interface qui correspond aux critères de recherche, elle retourne la première correspondance, ce qui met fin à la recherche. Les appelants doivent spécifier autant de critères de recherche que nécessaire pour trouver l’interface souhaitée.

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

USB_CONFIGURATION_DESCRIPTOR