Dela via


USB-enhetsklassdrivrutiner som ingår i Windows

Viktigt!

Den här artikeln är avsedd för programmerare. Om du är kund med USB-problem kan du läsa Åtgärda USB-C problem i Windows.

I den här artikeln visas de Drivrutiner som tillhandahålls av Microsoft för de USB-enhetsklasser som stöds.

  • Drivrutiner tillhandahållna av Microsoft för USB-IF godkända enhetsklasser.
  • För sammansatta enheter använder du USB Generic Parent Driver (Usbccgp.sys) som skapar fysiska enhetsobjekt (PDOs) för varje funktion.
  • För icke-kompatibla enheter eller en funktion av en sammansatt enhet använder du WinUSB (Winusb.sys).

Om du installerar USB-drivrutiner: Du behöver inte ladda ned USB-enhetsklassdrivrutiner. De installeras automatiskt. Dessa drivrutiner och deras installationsfiler ingår i Windows. De är tillgängliga i mappen \Windows\System32\DriverStore\FileRepository. Drivrutinerna uppdateras via Windows Update.

Om du skriver en anpassad drivrutin: Innan du skriver en drivrutin för din USB-enhet ska du avgöra om en Drivrutin som tillhandahålls av Microsoft uppfyller enhetskraven. Om en Microsoft-drivrutin inte är tillgänglig för den USB-enhetsklass som enheten tillhör kan du överväga att använda allmänna drivrutiner, Winusb.syseller Usbccgp.sys. Skriv endast en drivrutin när det behövs. Fler riktlinjer ingår i Välja en drivrutinsmodell för att utveckla en USB-klientdrivrutin.

USB-enhetsklasser

USB-enhetsklasser är kategorier av enheter med liknande egenskaper och som utför vanliga funktioner. USB-IF definierar dessa klasser och deras specifikationer. Varje enhetsklass identifieras av IHV i enhetsbeskrivningar i den inbyggda programvaran med hjälp av USB-IF godkända klass-, underklass- och protokollkoder. Microsoft tillhandahåller inbyggda drivrutiner för flera av dessa enhetsklasser, så kallade USB-enhetsklassdrivrutiner. Om en enhet som tillhör en enhetsklass som stöds är ansluten till ett system läser Windows automatiskt in klassdrivrutinen och enhetsfunktionerna utan att någon annan drivrutin krävs.

Maskinvaruleverantörer bör inte skriva drivrutiner för de enhetsklasser som stöds. Windows-klassdrivrutiner kanske inte stöder alla funktioner som beskrivs i en klassspecifikation. Om vissa av enhetens funktioner inte implementeras av klassdrivrutinen bör leverantörer tillhandahålla kompletterande drivrutiner som fungerar med klassdrivrutinen för att stödja hela det utbud av funktioner som erbjuds av enheten.

Allmän information om USB-IF godkända enhetsklasser finns i USB Common Class Specification

Den aktuella listan över USB-klassspecifikationer och klasskoder dokumenteras i USB-IF definierad klasskodlista.

Enhetskonfigurationsklasser

Windows kategoriserar enheter efter enhetskonfigurationsklasser, vilket anger enhetens funktioner.

Microsoft definierar installationsklasser för de flesta enheter. IHV:er och OEM-tillverkare kan definiera nya enhetskonfigurationsklasser, men bara om ingen av de befintliga klasserna gäller. Mer information finns iSystem-Defined installationsklasser för enheter.

Två viktiga enhetskonfigurationsklasser för USB-enheter är följande:

  • USBDevice {88BAE032-5A81-49f0-BC3D-A4FF138216D6}: IHV:er måste använda den här klassen för anpassade enheter som inte tillhör en annan klass. Den här klassen används inte för USB-värdstyrenheter och hubbar.

  • USB {36fc9e60-c465-11cf-8056-444553540000}: IHV:er får inte använda den här klassen för sina anpassade enheter. Den här klassen är reserverad för USB-värdstyrenheter och USB-hubbar.

Enhetskonfigurationsklasserna skiljer sig från DE USB-enhetsklasser som beskrevs tidigare. Till exempel har en ljudenhet en USB-enhetsklasskod på 01h i sin beskrivning. När Windows är anslutet till ett system läser den in klassdrivrutinen från Microsoft Usbaudio.sys. I Enhetshanteraren visas enheten under Ljud-, video- och spelkontrollanter, vilket anger att enhetsinstallationsklassen är Media.

Drivrutiner för USB-enhetsklass som tillhandahålls av Microsoft

USB-IF klasskod Installationsklass för enhet Microsoft-tillhandahållen
drivrutin och INF
Windows-stöd Beskrivning
Ljud (01h) Media
{4d36e96c-e325-11ce-bfc1-08002be10318}
Usbaudio.sys
Wdma_usb.inf
Windows 11
Windows 10
Microsoft tillhandahåller stöd för USB-ljudenhetsklassen med drivrutinen Usbaudio.sys. Mer information finns i "USBAudio Class System Driver" i Kernel-Mode WDM-ljudkomponenter. Mer information om stöd för Windows-ljud finns på webbplatsen Ljudenhetstekniker för Windows .
Kommunikation och CDC-kontroll (02h) portar
{4D36E978-E325-11CE-BFC1-08002BE10318}
Usbser.sys
Usbser.inf
Windows 11
Windows 10
I Windows 10 laddas Usbser.inf in Usbser.sys automatiskt som funktionsdrivrutin.

Mer information finns i USB-seriedrivrutinen (Usbser.sys)
Kommunikation och CDC-kontroll (02h) Modem
{4D36E96D-E325-11CE-BFC1-08002BE10318}

Stödjer subklass 02h (ACM)
Usbser.sys

Anpassad INF som refererar till mdmcpq.inf
Windows 11
Windows 10
Aktivera stöd för CDC och Wireless Mobile CDC (WMCDC) genom att ange ett registervärde, enligt beskrivningen i Stöd för enhetens klass för trådlös mobil kommunikation. När CDC-stöd är aktiverat räknar USB Common Class Generic Parent Driver upp gränssnittssamlingar som motsvarar CDC- och WMCDC-kontrollmodeller och tilldelar fysiska enhetsobjekt (PDO) till dessa samlingar.
Kommunikation och CDC-kontroll (02h) Nät
{4d36e972-e325-11ce-bfc1-08002be10318}

Stödjer subklass 0Dh (NCM)
UsbNcm.sys
UsbNcm.inf
Windows 11

Windows Server 2022
Microsoft levererar den UsbNcm.sys drivrutinen för att driva enheter som följer USB NCM. Källkoden för den här drivrutinen finns på NCM-Driver-for-Windows.
Kommunikation och CDC-kontroll (02h) Nät
{4d36e972-e325-11ce-bfc1-08002be10318}

Stöder underklass 0Eh (MBIM)
cxwmbclass.sys
wmbclass.sys
Netwmbclass.inf
Windows 11
Windows 10
Microsoft tillhandahåller wmbclass.sys drivrutinen för mobila bredbandsenheter. Se , MB-gränssnittsmodell.
HID (Human Interface Device - Mänskligt Gränssnittsenhet) (03h) HIDClass
{745a17a0-74d3-11d0-b6fe-00a0c90f57da}
Hidclass.sys
Hidusb.sys
Input.inf
Windows 11
Windows 10
Microsoft tillhandahåller HID-klassdrivrutinen (Hidclass.sys) och miniklassdrivrutinen (Hidusb.sys) för att använda enheter som uppfyller USB HID Standard. Mer information finns i HID-arkitektur och minidrivrutiner och HID-klassdrivrutinen. Mer information om Windows-stöd för indatamaskinvara finns på webbplatsen Indata och HID – arkitektur och drivrutinssupport .
Fysisk (05h) - - - Rekommenderad drivrutin: WinUSB (Winusb.sys)
Bild (06h) Bild
{6bdd1fc6-810f-11d0-bec7-08002be2092f}
Usbscan.sys
Sti.inf
Windows 11
Windows 10
Microsoft tillhandahåller den Usbscan.sys drivrutin som hanterar USB-digitalkameror och skannrar för Windows XP och senare operativsystem. Den här drivrutinen implementerar USB-komponenten i Windows Imaging Architecture (WIA). Mer information om WIA finns i Windows Image Acquisition Drivers och på webbplatsen för Windows Imaging Component. En beskrivning av den roll som Usbscan.sys spelar i WIA finns i WIA Core-komponenter.
Skrivare (07h) USB
Usbprint.sys räknar upp skrivarenheter under enhetsinstallationsklassen: Skrivare {4d36e979-e325-11ce-bfc1-08002be10318}.
Usbprint.sys
Usbprint.inf
Windows 11
Windows 10
Microsoft tillhandahåller den Usbprint.sys klassdrivrutin som hanterar USB-skrivare. Information om implementeringen av skrivarklassen i Windows finns på webbplatsen För utskrift – arkitektur och drivrutinssupport .
Masslagring (08h) USB Usbstor.sys Windows 11
Windows 10
Microsoft tillhandahåller Usbstor.sys portdrivrutin för att hantera USB-masslagringsenheter med Microsofts interna drivrutiner för lagringsklass. Ett exempel på en enhetsstack som den här drivrutinen hanterar finns i Exempel på enhetsobjekt för en USB-masslagringsenhet. Information om stöd för Windows-lagring finns på webbplatsen för Lagringstekniker .
Masslagring (08h) SCSIAdapter
{4d36e97b-e325-11ce-bfc1-08002be10318}
Underklass (06) och protokoll (62)Uaspstor.sys
Uaspstor.inf
Windows 11
Windows 10
Uaspstor.sys är klassdrivrutinen för SuperSpeed USB-enheter som stöder massströmslutpunkter.
Hubb (09h) USB
{36fc9e60-c465-11cf-8056-444553540000}
Usbhub.sys
Usb.inf
Windows 11
Windows 10
Microsoft tillhandahåller den Usbhub.sys drivrutinen för hantering av USB-hubbar. Mer information om relationen mellan hubbklassdrivrutinen och USB-stacken finns i USB-drivrutiner på värdsidan i Windows.
Hubb (09h) USB
{36fc9e60-c465-11cf-8056-444553540000}
Usbhub3.sys
Usbhub3.inf
Windows 11
Windows 10
Microsoft tillhandahåller Usbhub3.sys drivrutin för hantering av USB-hubbar (SuperSpeed) (USB 3.0). Drivrutinen laddas när en SuperSpeed-hubb är kopplad till en xHCI-styrenhet. Se USB-drivrutiner på värdsidan i Windows.
CDC-Data (0Ah) - - - Rekommenderad drivrutin: WinUSB (Winusb.sys)
Smartkort (0Bh) SmartCardReader
{50dd5230-ba8a-11d1-bf5d-0000f805f530}
Usbccid.sys (föråldrad) Windows 10 Microsoft tillhandahåller Usbccid.sys miniklassdrivrutin för att hantera USB-smartkortläsare. Mer information om smartkortsdrivrutiner i Windows finns i Designguide för smartkort.

WUDFUsbccidDriver.dll UMDF-drivrutinen ersätter drivrutinen för Usbccid.sys.
Innehållssäkerhet (0Dh) - - - Rekommenderad drivrutin: USB generisk huvuddrivrutin (Usbccgp.sys). Vissa funktioner för innehållssäkerhet implementeras i Usbccgp.sys. Se Innehållssäkerhetsfunktioner i Usbccgp.sys.
Video (0Eh) Bild
{6bdd1fc6-810f-11d0-bec7-08002be2092f}
Usbvideo.sys
Usbvideo.inf
Windows 11
Windows 10
Microsoft tillhandahåller USB-videoklassstöd med drivrutinen för Usbvideo.sys. Mer information finns i "USB Video Class Driver" under AVStream Minidrivers.
Personlig sjukvård (0Fh) - - - Rekommenderad drivrutin: WinUSB (Winusb.sys)
Ljud-/videoenheter (10h) - - - -
Diagnostisk enhet (DCh) - - - Rekommenderad drivrutin: WinUSB (Winusb.sys)
Trådlös styrenhet (E0h)

Stödjer subklass 01h och protokoll 01h
Bluetooth{e0cbf06c-cd8b-4647-bb8a-263b43f0f974} Bthusb.sys
Bth.inf
Windows 11
Windows 10
Microsoft tillhandahåller Bthusb.sys miniport-drivrutin för att hantera USB Bluetooth-radio. Mer information finns i Designguide för Bluetooth.
Diverse (EFh) Nät
{4d36e972-e325-11ce-bfc1-08002be10318}

Stödjer subklass 04h och protokoll 01h
Rndismp.sys
Rndismp.inf
Windows 11
Windows 10
Microsoft rekommenderar att maskinvaruleverantörer skapar USB NCM-kompatibla enheter i stället. USB NCM är ett offentligt USB-IF protokoll som ger bättre dataflödesprestanda.

RNDIS-funktionen centrerar hanteringen av alla nätverkskort i 802-standard i en enda klassdrivrutin, Rndismp.sys. En detaljerad beskrivning av fjärr-NDIS finns i Översikt över fjärr-NDIS. Mappningen av fjärr-NDIS till USB implementeras i Usb8023.sys drivrutinen. Mer information om nätverksstöd i Windows finns i Nätverk och trådlösa tekniker.
Programspecifik (FEh) - - - Rekommenderad drivrutin: WinUSB (Winusb.sys)
Leverantörsspecifik (FFh) - - Windows 11
Windows 10
Rekommenderad drivrutin: WinUSB (Winusb.sys)