Arbeiten mit USB-Schnittstellen
Das Framework stellt jede USB-Schnittstelle als Framework-USB-Schnittstellenobjekt dar. Wenn ein Treiber ein Framework-USB-Geräteobjekt erstellt, erstellt das Framework ein Framework-USB-Schnittstellenobjekt für jede USB-Schnittstelle, die die erste USB-Konfiguration des Geräts enthält.
Die meisten USB-Geräte verfügen nur über eine Schnittstelle, und die Schnittstelle verfügt nur über eine alternative Einstellung. Treiber für solche Geräte müssen in der Regel nicht die Objektmethoden verwenden, die das USB-Schnittstellenobjekt des Frameworks definiert.
Wenn Ihr Treiber USB-Geräte unterstützt, die mehrere Schnittstellen oder alternative Einstellungen bereitstellen, ermöglichen Schnittstellenobjektmethoden dem Treiber die folgenden Vorgänge:
Abrufen von Schnittstelleninformationen
Nachdem Ihr Treiber WdfUsbTargetDeviceCreateWithParameters aufgerufen hat, kann er WdfUsbTargetDeviceGetInterface aufrufen, um ein Handle für ein Framework-USB-Schnittstellenobjekt abzurufen, das eine der USB-Schnittstellen des Geräts darstellt. Dann kann Ihr Treiber mehrere Methoden aufrufen, die das USB-Schnittstellenobjekt definiert, um Informationen über die USB-Schnittstelle abzurufen.
Ihr Treiber kann jederzeit die folgenden Methoden aufrufen, nachdem er WdfUsbTargetDeviceCreateWithParameters aufgerufen hat:
WdfUsbInterfaceGetInterfaceNumber
Gibt die USB-Schnittstellennummer zurück, die einem USB-Schnittstellenobjekt zugeordnet ist.
WdfUsbInterfaceGetDescriptor
Ruft den USB-Schnittstellendeskriptor ab, der einer der alternativen Einstellungen einer USB-Schnittstelle zugeordnet ist.
WdfUsbInterfaceGetNumEndpoints
Gibt die Anzahl der Endpunkte zurück, die einer der alternativen Einstellungen einer USB-Schnittstelle zugeordnet sind.
WdfUsbInterfaceGetEndpointInformation
Ruft Informationen zu einem Endpunkt und der zugehörigen Pipe ab.
Ihr Treiber kann die folgenden Methoden aufrufen, nachdem er WdfUsbTargetDeviceSelectConfig aufgerufen hat:
WdfUsbInterfaceGetConfiguredSettingIndex
Gibt einen Indexwert zurück, der die alternative Einstellung identifiziert, die derzeit für eine USB-Schnittstelle ausgewählt ist.
WdfUsbInterfaceGetNumConfiguredPipes
Gibt die Anzahl der Pipes zurück, die für eine angegebene USB-Geräteschnittstelle konfiguriert sind.
WdfUsbInterfaceGetConfiguredPipe
Gibt ein Handle für das Frameworkpipeobjekt zurück, das einer angegebenen USB-Geräteschnittstelle und einem angegebenen Pipeindex zugeordnet ist.
Auswählen einer alternativen Einstellung für eine USB-Schnittstelle
Nachdem ein Treiber WdfUsbTargetDeviceCreateWithParameters aufgerufen hat, kann der Treiber WdfUsbInterfaceGetNumSettings aufrufen, um die Anzahl der alternativen Einstellungen abzurufen, die eine USB-Schnittstelle unterstützt.
Nachdem ein Treiber WdfUsbTargetDeviceSelectConfig aufgerufen hat, um eine Konfiguration für ein USB-Gerät auszuwählen, kann der Treiber WdfUsbInterfaceSelectSetting aufrufen, um eine alternative Einstellung für eine der USB-Schnittstellen der Konfiguration auszuwählen.
Die alternativen Einstellungen des Geräts müssen fortlaufend nummeriert werden, beginnend mit null.
Verwandte Informationen finden Sie unter Auswählen einer alternativen Einstellung in einer USB-Schnittstelle.