Freigeben über


Übersicht über die Auswahl einer USB-Konfiguration in USB-Treibern

In den Themen in diesem Abschnitt wird beschrieben, wie ein Clienttreiber sein Gerät konfigurieren muss.

Ein USB-Gerät macht seine Funktionen in Form einer Reihe von Schnittstellen verfügbar, die als USB-Konfiguration bezeichnet werden. Jede Schnittstelle besteht aus einer oder mehreren alternativen Einstellungen, und jede alternative Einstellung besteht aus einer Reihe von Endpunkten. Das Gerät muss mindestens eine Konfiguration bereitstellen, kann jedoch mehrere Konfigurationen bereitstellen, die sich gegenseitig ausschließende Definitionen für das Gerät darstellen. Weitere Informationen zu Konfigurationsdeskriptoren finden Sie unter USB-Konfigurationsdeskriptoren.

Die Gerätekonfiguration bezieht sich auf die Aufgaben, die der Client-Treiber durchführt, um eine USB-Konfiguration und eine alternative Schnittstelle in jeder Schnittstelle auszuwählen. Vor dem Senden von E/A-Anforderungen an das Gerät muss ein Clienttreiber die Konfiguration des Geräts lesen, die Informationen analysieren und eine entsprechende Konfiguration auswählen. Der Clienttreiber muss mindestens eine der unterstützten Konfigurationen auswählen, damit das Gerät funktioniert.

Ein WDM-basierter Clienttreiber kann eine der Konfigurationen auf einem USB-Gerät auswählen.

Wenn Ihr Clienttreiber auf Kernelmodus-Treiberframework oder User-Mode Driver Framework basiert, sollten Sie die entsprechenden Framework-Schnittstellen zum Konfigurieren eines USB-Geräts verwenden. Wenn Sie die USB-Vorlagen verwenden, die mit Microsoft Visual Studio Professional 2012 bereitgestellt werden, wählt der Vorlagencode die erste Konfiguration und die Standardeinstellung für jede Schnittstelle aus.

In diesem Abschnitt

Thema Beschreibung
Auswählen einer Konfiguration für ein USB-Gerät In diesem Thema erfahren Sie, wie Sie eine Konfiguration in einem universellen seriellen Busgerät (USB) auswählen.
Auswählen einer alternativen Einstellung in einer USB-Schnittstelle In diesem Thema werden die Schritte zum Ausgeben einer Auswahlschnittstellenanforderung zum Aktivieren einer alternativen Einstellung in einer USB-Schnittstelle beschrieben. Der Clienttreiber muss diese Anforderung nach dem Auswählen einer USB-Konfiguration ausstellen. Wenn Sie eine Konfiguration auswählen, wird standardmäßig auch die erste alternative Einstellung in jeder Schnittstelle in dieser Konfiguration aktiviert.
Konfiguration von Usbccgp.sys zur Auswahl einer nicht standardmäßigen USB-Konfiguration Dieses Thema enthält Informationen zu Registrierungseinstellungen, die die Art und Weise konfigurieren, wie Usbccgp.sys eine USB-Konfiguration auswählt. Im Thema wird auch beschrieben, wie Usbccgp.sys Auswahlkonfigurationsanforderungen verarbeitet, die von einem Clienttreiber gesendet werden, der eine der Funktionen eines zusammengesetzten Geräts steuert.

Informationen zu speziellen Überlegungen zur Konfiguration von Geräten, die Firmwaredownloads erfordern, finden Sie unter Konfigurieren von USB-Geräten, für die Firmwaredownloads erforderlich sind.

Einschränkungen für die Auswahl einer Konfiguration

Bestimmte Einschränkungen gelten, wenn ein Clienttreiber WDF-Objekte verwendet oder ob das Gerät über eine einzelne Schnittstelle oder mehrere Schnittstellen verfügt. Berücksichtigen Sie die folgenden Einschränkungen, bevor Sie die Standardkonfiguration ändern:

  • Ein Clienttreiber für ein zusammengesetztes Gerät, das Schnittstellen oder Schnittstellensammlungen über den generischen übergeordneten USB-Treiber (Usbccgp.sys) verwaltet, kann den Konfigurationswert des Geräts nicht ändern. Der Clienttreiber kann jedoch Usbccgp.sys so konfigurieren, dass eine andere Konfiguration als die erste (Standard) Konfiguration ausgewählt wird. Weitere Informationen finden Sie unter Konfigurieren von Usbccgp.sys zum Auswählen einer nicht standardmäßigen USB-Konfiguration.
  • Ein KMDF-basierter Clienttreiber, der die USB-E/A-Ziele des Frameworks verwendet, kann nur die erste Konfiguration auswählen.
  • WinUSB unterstützt nur die erste Konfiguration.
  • Ein Klassentreiber fehlt häufig an Unterstützung für mehrere Konfigurationen. Wenn Ihr Gerät eine Klasse implementiert, die durch eine USB-Klassenspezifikation definiert wird, finden Sie auf der WEBSITE der USB-Technologie Informationen zu Geräteklassen und Klassenspezifikationen. Microsoft stellt Klassentreiber für die unterstützten USB-Geräteklassen bereit. Weitere Informationen finden Sie unter Treiber für die unterstützten USB-Geräteklassen.