ドライバーの作成の必要性

Microsoft Windows には、多くのデバイスの種類に応じた組み込みドライバーが含まれています。 デバイスの種類に応じた組み込みのドライバーがある場合は、独自のドライバーを作成する必要はありません。 デバイスでは、組み込みドライバーを使用できます。

USB デバイス用の組み込みドライバー

デバイスが USB デバイス ワーキング グループ (DWG) で定義されているデバイス クラスに属している場合は、それに対する Windows USB クラス ドライバーが既にある可能性があります。 詳細については、「サポートされている USB デバイス クラスのドライバー」を参照してください。

その他のデバイス用の組み込みドライバー

現在、Microsoft は、他に次の種類のデバイス用の組み込みドライバーを提供しています。

デバイス テクノロジとドライバー 組み込みドライバー Windows のサポート 説明

ACPI: ACPI ドライバー

Acpi.sys

Windows XP 以降

Microsoft では、Acpi.sys ドライバーと ACPI BIOS を使用して、基本的な ACPI デバイス機能をサポートしています。 ACPI デバイスの機能を強化するために、ベンダーは WDM ファンクション ドライバーを提供できます。 Windows ACPI のサポートの詳細については、ACPI 設計ガイドの「ACPI デバイスのサポート」を参照してください。

オーディオ: Microsoft オーディオ クラス ドライバー

PortCls.sys

Windows XP 以降

Microsoft では、自社のポート クラス ドライバー (PortCls) を使用して、基本的なオーディオ レンダリングとオーディオ キャプチャをサポートしています。 PortCls を操作するアダプター ドライバーは、オーディオ デバイスのハードウェア ベンダーが提供します。 アダプター ドライバーには、初期化コード、ドライバー管理コード (DriverEntry 関数など)、およびオーディオ ミニポート ドライバーのコレクションが含まれています。 詳細については、「ポート クラスの概要」を参照してください。

バス: ネイティブ SD バス ドライバー、ネイティブ SD ストレージ クラス ドライバー、およびストレージ ミニポート ドライバー

sdbus.sys

sffdisk.sys, sffp_sd.sys (Windows Vista および 7)

sdstor.sys (Windows 8 以降)

Windows Vista および 7

Windows 8 以降

Microsoft では、次のように SD カード リーダーをサポートしています。オペレーティング システムは、PCI バスに直接接続する SD ホスト コントローラーをサポートします。 システムは SD ホスト コントローラーを列挙する際に、ネイティブ SD バス ドライバー (sdbus.sys) を読み込みます。 ユーザーが SD メモリ カードを挿入すると、Windows はネイティブ SD ストレージ クラス ドライバー (sffdisk.sys) とストレージ ミニポート ドライバー (sffp_sd.sys) をバス ドライバー上に読み込みます。 これらの SD ストレージ ドライバーは、Windows 8 以降のオペレーティング システム用の sdstor.sys という名前の単一のドライバーで統合されています。 GPS やワイヤレス LAN など、別の種類の機能を持つ SD カードをユーザーが挿入した場合、Windows はデバイスのベンダーが提供するドライバーを読み込みます。

HID: HID I2C ドライバー

HIDI2C.sys

Windows 8 以降

Microsoft では、Simple Peripheral Bus (SPB) と汎用 I/O (GPIO) をサポートする SoC システム上の HID over I2C デバイスをサポートしています。 そうするために、HIDI2C.sys ドライバーを使用します。 詳しくは、「HID over I2C」を参照してください。

HID: レガシ ゲーム ポート ドライバー

HidGame.sys、Gameenum.sys

Windows Vista

Windows Server 2003

Windows XP

Windows Vista までは、Microsoft は HidGame.sys ドライバーと Gameenum.sys ドライバーを使用して、レガシ (非 USB、非 Bluetooth、非 I2C) ゲーム ポートをサポートしていました。 詳細については、「Windows でサポートされている HID トランスポート」を参照してください。

HID: レガシ キーボード クラス ドライバー

Kbdclass.sys

Windows XP 以降

Microsoft では、Kbdclass.sys ドライバーを使用して、レガシ (非 USB、非 Bluetooth、非 I2C) キーボードをサポートしています。 詳細については、「キーボードとマウスの HID クライアント ドライバー」を参照してください。 レガシ キーボードの機能を強化するために、ベンダーはキーボード フィルター ドライバーを提供できます。 詳細については、「Kbfiltr のサンプル」を参照してください。

HID: レガシ マウス クラス ドライバー

Mouclass.sys

Windows XP 以降

Microsoft では、Mouclass.sys ドライバーを使用して、レガシ (非 USB、非 Bluetooth、非 I2C) マウスをサポートしています。 キーボードとマウスの HID クライアント ドライバー。 レガシ マウスの機能を強化するために、ベンダーはマウス フィルター ドライバーを提供できます。 詳細については、「Moufiltr のサンプル」を参照してください。

HID: PS/2 (i8042prt) ドライバー

I8042prt.sys

Windows XP 以降

Microsoft では、I8042.sys ドライバーを使用して、レガシ PS/2 のキーボードとマウスをサポートしています。 PS/2 のマウスまたはキーボードの機能を強化するために、ベンダーはキーボードまたはマウスのフィルター ドライバーを提供できます。 詳細については、「Kbfiltr のサンプル」および「Moufiltr のサンプル」を参照してください。

イメージング: Web Services for Devices (WSD) スキャン クラス ドライバー

WSDScan.sys

Windows Vista 以降にのみ適用される

Microsoft では、WSD スキャン ドライバー (wsdscan.sys) を使用して、Web サービス スキャナー (つまり、Web 経由での使用が想定されているスキャナー) をサポートしています。 ただし、WSD 分散スキャン管理をサポートする Web サービス スキャナー デバイスでは、2 つの Web サービス プロトコルを実装する必要があります。 詳細については、「WIA と Web Services for Devices」を参照してください。

印刷: Microsoft プロッター ドライバー

Msplot

Windows XP 以降

Microsoft では、Microsoft プロッター ドライバー (Msplot) を使用して、Hewlett-Packard グラフィックス言語をサポートするプロッターをサポートしています。 プロッターの機能を強化するために、ミニドライバーを作成できます。このミニドライバーは、1 つ以上のプロッター特性評価データ (PCD) ファイルで構成されます。 詳細については、「プロッター ドライバー ミニドライバー」を参照してください。

印刷: Microsoft PostScript プリンター ドライバー

Pscript

Windows XP 以降

Microsoft では、PostScript プリンター ドライバー (Pscript) を使用して、PostScript プリンターをサポートしています。 PostScript プリンターの機能を強化するために、1 つ以上の PostScript プリンター記述 (PPD) ファイルとフォント (NTF) ファイルで構成されるミニドライバーを作成できます。 詳細については、「Pscript ミニドライバー」を参照してください。

印刷: Microsoft ユニバーサル プリンター ドライバー

Unidrv

Windows XP 以降

Microsoft では、ユニバーサル プリンター ドライバー (Unidrv) を使用して、非 PostScript プリンターをサポートしています。 非 PostScript プリンターの機能を強化するために、1 つ以上の汎用プリンター記述 (GPD) ファイルで構成されるミニドライバーを作成できます。 詳細については、「Microsoft ユニバーサル プリンター ドライバー」を参照してください。

印刷: Microsoft v4 プリンター ドライバー

Windows 8 以降

Windows 8 以降、Microsoft は PostScript および非 PostScript のプリンターとプロッターをサポートする 1 つのインボックス クラス ドライバーを提供しています。 このドライバーは、Microsoft プロッター ドライバー、Microsoft ユニバーサル プリンター ドライバー、および Microsoft PostScript プリンター ドライバーよりも優先されます。 このプリンター ドライバーは、単独で変更せずに使用され、基本的な印刷機能をサポートします。 詳しくは、 v4 プリンター ドライバーに関するページをご覧ください。

印刷: Microsoft XPS プリンター ドライバー

XPSDrv

Windows Vista 以降にのみ適用される

Microsoft では、XPS プリンター ドライバー (XPSDrv) を使用して、XPS ドキュメント形式での印刷をサポートしています。 このドライバーでは、Microsoft の GDI ベースのバージョン 3 プリンター ドライバー アーキテクチャが拡張され、XML Paper Specification (XPS) ドキュメントの処理がサポートされます。 XPSDrv プリンター ドライバーでは、XPS ドキュメント形式が、スプール ファイル形式とドキュメント ファイル形式として使用されます。 XPSDrv プリンター ドライバーは、単独で変更せずに使用され、基本的な XPS 印刷をサポートします。 詳細については、「XPSDrv プリンター ドライバー」を参照してください。

センサー: センサー HID クラス ドライバー

SensorsHIDClassDriver.dll

Windows 8 以降

Microsoft では、HID クラス ドライバーを使用して、モーション、アクティビティ、およびその他の種類のセンサーをサポートしています。 Windows 8 には、この HID クラス ドライバーと、対応する HID I2C および HID USB ミニポート ドライバーが用意されているため、独自のドライバーを実装する必要はありません。 必要な処理は、このホワイト ペーパーに説明されている使用法をセンサーのファームウェアで報告することだけです。 Windows は、提供されたファームウェアと独自の HID ドライバーを使用してセンサーを有効にして初期化し、関連する Windows API にセンサーへのアクセスを提供します。

タッチ: Windows ポインター デバイス ドライバー

Windows 8 以降

Microsoft では、HID クラス ドライバーを使用して、ペンとタッチ デバイスをサポートしています。 Windows 8 には、この HID クラス ドライバーと、対応する HID I2C および HID USB ミニポート ドライバーが用意されているため、独自のドライバーを実装する必要はありません。 必要な処理は、このホワイト ペーパーに説明されている使用法をポインター デバイスのファームウェアで報告することだけです。 Windows は、ファームウェアと Windows 自身の HID ドライバーを使ってタッチとポインターの機能を有効にして、Windows のタッチおよびポインター API からデバイスにアクセスできるようにします。

WPD: メディア転送プロトコル クラス ドライバー

WpdMtpDr.dll、WpdMtp.dll、WpdMtpUs.dll、WpdConns.dll、および WpdUsb.sys

Windows Vista 以降にのみ適用される

Microsoft では、メディア転送プロトコル クラス ドライバーを使用して、音楽プレーヤー、デジタル カメラ、携帯電話、健康管理デバイスなど、Windows との接続を必要とするポータブル デバイスをサポートしています。 このクラス ドライバーを使用するベンダーは、デバイスに MTP クラス プロトコルを実装する必要があります。 (デジタル スチル カメラの場合、MTP の実装は PTP と下位互換性がある必要があります。) 詳細については、「ハードウェア ベンダー向けのガイダンス」を参照してください 。