Freigeben über


USBD_ParseConfigurationDescriptorEx-Funktion (usbdlib.h)

Die USBD_ParseConfigurationDescriptorEx Routine durchsucht einen angegebenen Konfigurationsdeskriptor und gibt einen Zeiger auf eine Schnittstelle zurück, die den angegebenen Suchkriterien entspricht.

Syntax

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

Parameter

[in] ConfigurationDescriptor

Zeiger auf einen USB-Konfigurationsdeskriptor, der die Schnittstelle enthält, nach der gesucht werden soll.

[in] StartPosition

Zeiger auf die Adresse im Konfigurationsdeskriptor, der unter ConfigurationDescriptor bereitgestellt wird, um mit der Suche zu beginnen. Um vom Anfang des Konfigurationsdeskriptors aus zu suchen, müssen die Parameter ConfigurationDescriptor und StartPosition die gleiche Adresse aufweisen.

[in] InterfaceNumber

Gibt den gerätedefinierten Index der abzurufenden Schnittstelle an. Dies sollte auf -1 festgelegt werden, wenn es sich nicht um ein Suchkriterium handelt.

[in] AlternateSetting

Gibt den gerätedefinierten Index der abzurufenden Schnittstelle an. Wenn der Aufrufer nicht möchte, dass der wert der alternativen Einstellung ein Suchkriterium ist, sollte dieser Parameter auf -1 festgelegt werden.

[in] InterfaceClass

Gibt den geräte- oder USB-definierten Bezeichner für die Schnittstellenklasse der abzurufenden Schnittstelle an. Wenn der Aufrufer nicht möchte, dass der Wert der Schnittstellenklasse ein Suchkriterium ist, sollte dieser Parameter auf -1 festgelegt werden.

[in] InterfaceSubClass

Gibt den geräte- oder USB-definierten Bezeichner für die Schnittstellenunterklasse der abzurufenden Schnittstelle an. Wenn der Aufrufer nicht möchte, dass der Wert der Schnittstellenunterklasse ein Suchkriterium ist, sollte dieser Parameter auf -1 festgelegt werden.

[in] InterfaceProtocol

Gibt den geräte- oder USB-definierten Bezeichner für das Schnittstellenprotokoll der abzurufenden Schnittstelle an. Wenn der Aufrufer nicht möchte, dass der Wert des Schnittstellenprotokolls ein Suchkriterium ist, sollte dieser Parameter auf -1 festgelegt werden.

Rückgabewert

USBD_ParseConfigurationDescriptorEx gibt einen Zeiger auf den ersten Schnittstellendeskriptor zurück, der den angegebenen Suchkriterien entspricht. Wenn keine Schnittstelle mit den Suchkriterien übereinstimmt, wird NULL zurückgegeben.

Hinweise

Aufrufer können mehr als eines der Suchkriterien (InterfaceNumber, AlternateSetting, InterfaceClass, InterfaceSubClass und InterfaceProtocol) angeben, wenn sie diese Routine verwenden, um eine Schnittstelle innerhalb eines Konfigurationsdeskriptors zu finden. Beispielcode finden Sie unter USBD_CreateConfigurationRequestEx.

Wenn diese Routine den Konfigurationsdeskriptor analysiert und nach dem Schnittstellendeskriptor sucht, der den Suchkriterien entspricht, wird die erste Übereinstimmung zurückgegeben, wodurch die Suche beendet wird. Aufrufer sollten so viele Suchkriterien angeben, wie erforderlich sind, um die gewünschte Schnittstelle zu finden.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header usbdlib.h (include Usbdlib.h)
Bibliothek Usbd.lib
IRQL < DISPATCH_LEVEL

Weitere Informationen

Programmierreferenz für USB-Gerätetreiber

USB_CONFIGURATION_DESCRIPTOR