USB-Standardbezeichner
Der Satz von Bezeichnern, die für USB-Geräte generiert werden, hängt davon ab, ob es sich bei dem Gerät um ein Gerät mit einer oder mehreren Schnittstellen handelt.
Single-Interface USB-Geräte
Wenn ein neues USB-Gerät angeschlossen ist, erstellt der vom System bereitgestellte USB-Hubtreiber die folgende Geräte-ID anhand von Informationen, die aus dem Gerätedeskriptor des Geräts extrahiert wurden:
USB\VID_v(4)&PID_d(4)&REV_r(4)
Hierbei gilt:
v(4) ist der Anbietercode, den das USB-Komitee dem Anbieter zuweist.
d(4) ist der Produktcode, den der Anbieter dem Gerät zuweist.
r(4) ist der Revisionscode.
Der Hubtreiber extrahiert die Hersteller- und Produktcodes aus den Feldern idVendor, idProduct und bcdDevice des Gerätedeskriptors. Dies sind 4-stellige Hexadezimalzahlen.
Ein INF-Modellabschnitt kann auch die folgende Hardware-ID angeben:
USB\VID_v(4)&PID_d(4)
und die folgenden kompatiblen IDs:
USB\CLASS_c(2)&SUBCLASS_s(2)&PROT_p(2)
USB\CLASS_c(2)&SUBCLASS_s(2)
USB\CLASS_c(2)
Hierbei gilt:
c(2) ist der Geräteklassencode aus dem Gerätedeskriptor.
s(2) ist der Geräteunterklassencode.
p(2) ist der Protokollcode.
Geräteklassencode, Unterklassencode und Protokollcode werden durch die Felder bDeviceClass, bDeviceSubClass und bDeviceProtocol des Gerätedeskriptors bestimmt. Dies sind 2-stellige Hexadezimalzahlen.
Multiple-Interface USB-Geräte
Geräte mit mehreren Schnittstellen werden als zusammengesetzte Geräte bezeichnet. Wenn ab Windows 2000 ein neues zusammengesetztes USB-Gerät an einen Computer angeschlossen ist, erstellt der USB-Hubtreiber ein physisches Geräteobjekt (PDO) und benachrichtigt das Betriebssystem darüber, dass seine Untergeordneten Geräte geändert wurden. Nach der Abfrage des Hubtreibers nach den Hardwarebezeichnern, die dem neuen PDO zugeordnet sind, durchsucht das Betriebssystem die entsprechenden INF-Dateien, um eine Übereinstimmung für die Bezeichner zu finden. Wenn eine andere Übereinstimmung als USB\COMPOSITE gefunden wird, wird der in der INF-Datei angegebene Treiber geladen. Wenn jedoch keine andere Übereinstimmung gefunden wird, verwendet das Betriebssystem die kompatible ID USB\COMPOSITE, für die es den generischen übergeordneten USB-Treiber lädt. Der generische übergeordnete Treiber erstellt dann ein separates PDO und generiert einen separaten Satz von Hardwarebezeichnern für jede Schnittstelle des zusammengesetzten Geräts.
Jede Schnittstelle verfügt über eine Geräte-ID in der folgenden Form:
USB\VID_v(4)&PID_d(4)&MI_z(2)
Hierbei gilt:
v(4) ist der Anbietercode, den das USB-Komitee dem Anbieter zuweist.
d(4) ist der Produktcode, den der Anbieter dem Gerät zuweist.
z(2) ist die Schnittstellennummer, die aus dem Feld bInterfaceNumber des entsprechenden Schnittstellendeskriptors extrahiert wird.
Ein INF-Modellabschnitt kann auch die folgenden kompatiblen IDs angeben:
USB\CLASS_d(2)&SUBCLASS_s(2)&PROT_p(2)
USB\CLASS_d(2)&SUBCLASS_s(2)
USB\CLASS_d(2)
USB\COMPOSITE
Hierbei gilt:
d(2) ist der Geräteklassencode aus dem Gerätedeskriptor.
s(2) ist der Unterklassencode.
p(2) ist der Protokollcode.
Geräteklassencode, Unterklassencode und Protokollcode werden durch die Felder bInterfaceClass, bInterfaceSubClass und bInterfaceProtocol des Schnittstellendeskriptors bestimmt. Dies sind 2-stellige Hexadezimalzahlen.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für