Windows に含まれる USB デバイス クラス ドライバー
重要
このトピックはプログラマー向けです。 USB に関する問題が発生している場合は、「Windows での USB-C の問題を修正する」を参照してください
この記事では、サポートされている USB デバイス クラス用のマイクロソフト提供ドライバーの一覧を示します。
- USB-IF 認定デバイス クラス用の Microsoft 提供のドライバー。
- 複合デバイスの場合は、USB 汎用親ドライバー (Usbccgp.sys) を使用します。これにより、各関数の物理デバイス オブジェクト (PDO) が作成されます。
- 非複合デバイス、または複合デバイスの関数の場合は、WinUSB (Winusb.sys) を使用します。
USB ドライバーをインストールする場合: USB デバイス クラス ドライバーをダウンロードする必要はありません。 これらは自動的に再インストールされます。 これらのドライバーとそのインストール ファイルは、Windows に含まれています。 \Windows\System32\DriverStore\FileRepository フォルダーで使用できます。 ドライバーは Windows Update を通じて更新されます。
カスタム ドライバーを作成する場合: USB デバイス用のドライバーを作成する前に、マイクロソフト提供ドライバーがデバイスの要件を満たしているかどうかを確認します。 デバイスが属する USB デバイス クラスでマイクロソフト提供ドライバーを使用できない場合、汎用ドライバー (Winusb.sys または Usbccgp.sys) の使用を検討してください。 ドライバーは必要な場合にのみ作成してください。 「USB クライアント ドライバー開発用のドライバー モデルの選択」には、さらに多くのガイドラインが含まれています。
USB デバイス クラス
USB デバイス クラスは、類似した特性を持ち、共通の関数を実行するデバイスのカテゴリです。 USB-IF は、これらのクラスとその仕様を定義しています。 各デバイス クラスは、USB-IF 承認済みのクラス、サブクラス、およびプロトコル コードによって識別され、これらはすべてファームウェアのデバイス記述子で IHV によって提供されます。 Microsoft では、"USB デバイス クラス ドライバー" と呼ばれる、いくつかのデバイス クラス用のインボックス ドライバーを提供しています。 サポートされているデバイス クラスに属するデバイスがシステムに接続されている場合、Windows はクラス ドライバーを自動的に読み込み、デバイスは他のドライバーがなくても機能します。
ハードウェア ベンダーは、サポートされているデバイス クラスのドライバーを作成してはなりません。 Windows クラス ドライバーでは、クラスの仕様で説明されているすべての機能がサポートされていない場合があります。 デバイスの機能の一部がクラス ドライバーによって実装されていない場合、ベンダーは、クラス ドライバーと連携し、デバイスによって提供される機能の全範囲をサポートする補助ドライバーを提供する必要があります。
USB-IF 認定デバイス クラスに関する一般情報については、「USB 共通クラス仕様」をご覧ください
USB クラスの仕様とクラス コードの現在の一覧については、「USB-IF 定義済みクラス コード リスト」をご覧ください。
デバイス セットアップ クラス
Windows では、デバイスの機能を示す、"デバイス セットアップ クラス" でデバイスを分類します。
Microsoft では、ほとんどのデバイスのセットアップ クラスを定義しています。 IHV と OEM で新しいデバイス セットアップ クラスを定義できますが、既存のクラスが適用されていない場合に限ります。 詳細については、「システム定義のデバイス セットアップ クラス」を参照してください。
USB デバイス用の 2 つの重要なデバイス セットアップ クラスは、次のとおりです。
USBDevice {88BAE032-5A81-49f0-BC3D-A4FF138216D6}: IHV は、別のクラスに属していないカスタム デバイスに対してこのクラスを使用する必要があります。 このクラスは、USB ホスト コントローラーとハブには使用されません。
USB {36fc9e60-c465-11cf-8056-444553540000}: IHV は、カスタム デバイスにこのクラスを使用してはなりません。 これは、USB ホスト コントローラーおよび USB ハブ用に予約されています。
デバイス セットアップ クラスは、前述の USB デバイス クラスとは異なります。 たとえば、オーディオ デバイスでは、その記述子に 01h という USB デバイス クラス コードがあります。 システムに接続されている場合、Windows では、マイクロソフト提供のクラス ドライバーである、Usbaudio.sys が読み込まれます。 デバイス マネージャーでは、デバイスが [サウンド、ビデオ、およびゲーム コントローラー] に表示されます。これは、デバイス セットアップ クラスが Media であることを示します。
Microsoft 提供の USB デバイス クラス ドライバー
USB-IF クラス コード | デバイス セットアップ クラス | マイクロソフト提供 ドライバーと INF |
Windows のサポート | 説明 |
---|---|---|---|---|
オーディオ (01h) | Media {4d36e96c-e325-11ce-bfc1-08002be10318} |
Usbaudio.sys Wdma_usb.inf |
Windows 11 Windows 10 デスクトップ エディション (Home、Pro、Enterprise、Education) Windows 10 Mobile Windows 8.1 |
マイクロソフトでは、Usbaudio.sys ドライバーを使用した USB オーディオ デバイス クラスのサポートを提供しています。 詳細については、「カーネル モード WDM オーディオ コンポーネント」の USB オーディオ クラス システム ドライバーに関するセクションを参照してください。 Windows のオーディオ サポートの詳細については、Windows 用のオーディオ デバイス テクノロジに関する Web サイトを参照してください。 |
通信および CDC 制御 (02h) | ポート {4D36E978-E325-11CE-BFC1-08002BE10318} |
Usbser.sys Usbser.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 10 Mobile |
Windows 10 では、Usbser.sys を関数ドライバーとして自動的に読み込む、新しい INF (Usbser.inf) が追加されました。 詳細については、「USB シリアル ドライバー (Usbser.sys)」を参照してください |
通信および CDC 制御 (02h) | Modem {4D36E96D-E325-11CE-BFC1-08002BE10318} サブクラス 02h (ACM) をサポート |
Usbser.sys mdmcpq.inf を参照するカスタム INF |
Windows 11 Windows 10 デスクトップ エディション Windows 8.1 |
Windows 8.1 以前のバージョンでは、Usbser.sys は自動的に読み込まれません。 ドライバーを読み込むには、モデム INF (mdmcpq.inf) を参照し、[Install] セクションと [Needs] セクションを含む INF を記述する必要があります。「ワイヤレス モバイル通信デバイス クラスのサポート」の説明に従ってレジストリ値を設定することにより、CDC およびワイヤレス モバイル CDC (WMCDC) のサポートを有効にすることができます。CDC のサポートが有効になると、USB 共通クラス汎用親ドライバーは、CDC および WMCDC コントロール モデルに対応するインターフェイス コレクションを列挙し、これらのコレクションに物理デバイス オブジェクト (PDO) を割り当てます。 |
通信および CDC 制御 (02h) | Net {4d36e972-e325-11ce-bfc1-08002be10318} サブクラス 0Dh (NCM) をサポート |
UsbNcm.sys UsbNcm.inf |
Windows 11 Windows Server 2022 |
Microsoft によって、Usb NCM に準拠しているデバイスを操作するための UsbNcm.sys ドライバーが提供されます。 このドライバーのソース コードは、NCM-Driver-for-Windows で入手できます。 |
通信および CDC 制御 (02h) | Net {4d36e972-e325-11ce-bfc1-08002be10318} サブクラス 0Eh (MBIM) をサポート |
cxwmbclass.sys wmbclass.sys Netwmbclass.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 8.1 |
マイクロソフトは、モバイル ブロードバンド デバイス用の wmbclass.sys ドライバーを提供しています。 MB インターフェイス モデルに関するページを参照してください。 |
HID (ヒューマン インターフェイス デバイス) (03h) | HIDClass {745a17a0-74d3-11d0-b6fe-00a0c90f57da} |
Hidclass.sys Hidusb.sys Input.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 10 Mobile Windows 8.1 |
Microsoft では、USB HID 標準に準拠しているデバイスを操作するための、HID クラス ドライバー (Hidclass.sys) とミニクラス ドライバー (Hidusb.sys) を提供しています。 詳細については、「HID のアーキテクチャ」と「ミニドライバーと HID クラス ドライバー」を参照してください。 入力ハードウェアの Windows サポートについて詳しくは、「入力と HID - アーキテクチャとドライバーのサポート」Web サイトをご覧ください。 |
物理 (05h) | - | - | - | 推奨されるドライバー: WinUSB (Winusb.sys) |
イメージ (06h) | イメージ {6bdd1fc6-810f-11d0-bec7-08002be2092f} |
Usbscan.sys Sti.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 8.1 |
Microsoft により、Windows XP 以降のオペレーティング システム用の USB デジタル カメラとスキャナーを管理する Usbscan.sys ドライバーが提供されています。 このドライバーでは、Windows Imaging Architecture (WIA) の USB コンポーネントを実装します。 WIA の詳細については、「Windows イメージ取得ドライバー」および Windows Imaging Component に関する Web サイトを参照してください。 WIA での Usbscan.sys の役割の説明については、「WIA Core コンポーネント」を参照してください。 |
プリンター (07h) | USB Usbprint.sys は、デバイス セットアップ クラス プリンター {4d36e979-e325-11ce-bfc1-08002be10318} を列挙します。 |
Usbprint.sys Usbprint.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 8.1 |
Microsoft では、USB プリンターを管理する Usbprint.sys クラス ドライバーを提供しています。 Windows でのプリンター クラスの実装については、「印刷」のアーキテクチャとドライバーのサポートに関する Web サイトを参照してください。 |
大容量記憶装置 (08h) | USB | Usbstor.sys | Windows 11 Windows 10 デスクトップ エディション Windows 10 Mobile Windows 8.1 |
Microsoft では、Microsoft のネイティブ ストレージ クラス ドライバーを使用して USB 大容量記憶装置を管理するための、Usbstor.sys ポート ドライバーを提供しています。 このドライバーによって管理されるデバイス スタックの例については、「USB 大容量記憶装置のデバイス オブジェクトの例」を参照してください。 Windows 記憶域のサポートについては、記憶域テクノロジに関する Web サイトを参照してください。 |
大容量記憶装置 (08h) | SCSIAdapter {4d36e97b-e325-11ce-bfc1-08002be10318} |
サブスクラス (06) とプロトコル (62)Uaspstor.sys Uaspstor.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 10 Mobile Windows 8.1 |
Uaspstor.sys は、一括ストリーム エンドポイントをサポートする SuperSpeed USB デバイス用のクラス ドライバーです。 |
ハブ (09h) | USB {36fc9e60-c465-11cf-8056-444553540000} |
Usbhub.sys Usb.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 10 Mobile Windows 8.1 |
Microsoft では、USB ハブを管理するための Usbhub.sys ドライバーを提供しています。 ハブ クラス ドライバーと USB スタックの関係の詳細については、「Windows の USB ホスト側ドライバー」を参照してください。 |
ハブ (09h) | USB {36fc9e60-c465-11cf-8056-444553540000} |
Usbhub3.sys Usbhub3.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 8.1 |
Microsoft では、SuperSpeed (USB 3.0) USB ハブを管理するための Usbhub3.sys ドライバーを提供しています。 ドライバーは、SuperSpeed ハブが xHCI コントローラーに接続されているときに読み込まれます。 「Windows の USB ホスト側ドライバー」を参照してください。 |
CDC データ (0Ah) | - | - | - | 推奨されるドライバー: WinUSB (Winusb.sys) |
スマート カード (0Bh) | SmartCardReader {50dd5230-ba8a-11d1-bf5d-0000f805f530} |
Usbccid.sys (現在不使用) | Windows 10 デスクトップ エディション | Microsoft では、USB スマート カード リーダーを管理するための Usbccid.sys のミニクラス ドライバーを提供しています。 Windows のスマート カード ドライバーの詳細については、スマート カード設計ガイドに関するページを参照してください。 WUDFUsbccidDriver.dll UMDF ドライバーは、Usbccid.sys ドライバーを置き換えます。 |
スマート カード (0Bh) | SmartCardReader {50dd5230-ba8a-11d1-bf5d-0000f805f530} |
WUDFUsbccidDriver.dll WUDFUsbccidDriver.inf |
Windows 8.1 | WUDFUsbccidDriver.dll は、USB CCID スマート カード リーダー デバイス用のユーザーモード ドライバーです。 |
コンテンツ セキュリティ (0Dh) | - | - | - | 推奨されるドライバー: USB 汎用親ドライバー (Usbccgp.sys)。 一部のコンテンツ セキュリティ機能は、Usbccgp.sys に実装されています。 「Usbccgp.sys のコンテンツ セキュリティ機能」を参照してください。 |
ビデオ (0Eh) | イメージ {6bdd1fc6-810f-11d0-bec7-08002be2092f} |
Usbvideo.sys Usbvideo.inf |
Windows 11 Windows 10 デスクトップ エディション |
マイクロソフトでは、Usbvideo.sys ドライバーで USB ビデオ クラスをサポートしています。 詳細については、AVStream ミニドライバーに関するページの「USB ビデオ クラス ドライバー」を参照してください。 |
個人の医療 (0Fh) | - | - | - | 推奨されるドライバー: WinUSB (Winusb.sys) |
オーディオおよびビデオ デバイス (10h) | - | - | - | - |
診断デバイス (DCh) | - | - | - | 推奨されるドライバー: WinUSB (Winusb.sys) |
ワイヤレス コントローラー (E0h) サブクラス 01h およびプロトコル 01h をサポート |
Bluetooth{e0cbf06c-cd8b-4647-bb8a-263b43f0f974} | Bthusb.sys Bth.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 10 Mobile |
Microsoft では、USB Bluetooth ラジオを管理するための Bthusb.sys ミニポート ドライバーを提供しています。 詳細については、Bluetooth 設計ガイドに関するページを参照してください。 |
その他 (EFh) | Net {4d36e972-e325-11ce-bfc1-08002be10318} サブクラス 04h およびプロトコル 01h をサポート |
Rndismp.sys Rndismp.inf |
Windows 11 Windows 10 デスクトップ エディション Windows 8.1 |
ハードウェア ベンダーが代わりに USB NCM 互換デバイスを構築することをお勧めします。 USB NCM は、スループット パフォーマンスが向上するパブリックな USB-IF プロトコルです。 RNDIS 施設では、単一のクラス ドライバー Rndismp.sys ですべての 802 スタイルのネットワーク カードが集中管理されます。 リモート NDIS の詳細については、リモート NDIS の概要に関するページを参照してください。 リモート NDIS から USB へのマッピングは、Usb8023.sys ドライバーに実装されています。 Windows でのネットワーク サポートについて詳しくは、「ネットワークとワイヤレス テクノロジ」をご覧ください。 |
アプリケーション固有 (FEh) | - | - | - | 推奨されるドライバー: WinUSB (Winusb.sys) |
ベンダー固有 (FFh) | - | - | Windows 11 Windows 10 デスクトップ エディション Windows 10 Mobile |
推奨されるドライバー: WinUSB (Winusb.sys) |