Share via


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

Microsoft Windows には、さまざまなデバイスの種類に対応する組み込みのドライバーが用意されています。目的のデバイスの種類に対応する組み込みドライバーがあれば、独自のドライバーを作成する必要はありません。そのデバイスでは組み込みのドライバーを使うことができます。

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

デバイスが USB Device Working Group (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 以降

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

HID: HID I2C ドライバー

HIDI2C.sys

Windows 8 以降

Microsoft は、SPB (Simple Peripheral Bus) と汎用 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 クライアント ドライバーをご覧ください。ベンダーでは、レガシ キーボードの機能を強化するためにキーボード フィルター ドライバーを提供できます。詳しくは、MSDN コード ギャラリーの Kbfiltr サンプルをご覧ください。

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

Mouclass.sys

Windows XP 以降

Microsoft は、Mouclass.sys ドライバーを通じてレガシ (USB でなく、Bluetooth でなく、I2C でもない) マウスをサポートしています。キーボードとマウスの HID クライアント ドライバーをご覧ください。ベンダーでは、レガシ マウスの機能を強化するためにマウス フィルター ドライバーを提供できます。詳しくは、MSDN コード ギャラリーの Moufiltr サンプルをご覧ください。

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

I8042prt.sys

Windows XP 以降

Microsoft は、I8042.sys ドライバーを通じてレガシ PS/2 キーボードとマウスをサポートしています。ベンダーでは、PS/2 マウスまたはキーボードの機能を強化するために、キーボードまたはマウスのフィルター ドライバーを提供できます。詳しくは、MSDN コード ギャラリーの 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 Graphics Language をサポートするプロッターをサポートしています。プロッターの機能を強化するために、1 つ以上の Plotter Characterization Data (PCD) ファイルから成るミニドライバーを作成できます。詳しくは、プロッター ドライバーのミニドライバーに関するページをご覧ください。

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

Pscript

Windows XP 以降

Microsoft は、PostScript プリンター ドライバー (Pscript) を通じて PostScript プリンターをサポートしています。PostScript プリンターの機能を強化するために、1 つ以上の PostScript Printer Description (PPD) ファイルとフォント (NTF) ファイルから成るミニドライバーを作成できます。詳しくは、Pscript ミニドライバーに関するページをご覧ください。

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

Unidrv

Windows XP 以降

Microsoft は、ユニバーサル プリンター ドライバー (Unidrv) を通じて PostScript 以外のプリンターをサポートしています。PostScript 以外のプリンターの機能を強化するために、1 つ以上の Generic Printer Description (GPD) ファイルから成るミニドライバーを作成できます。詳しくは、Microsoft ユニバーサル プリンター ドライバーに関するページをご覧ください。

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

Windows 8 以降

Windows 8 以降では、PostScript と PostScript 以外のプリンター、およびプロッターをサポートする 1 つのインボックス クラス ドライバーが Microsoft から提供されています。このドライバーは、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 は、ファームウェアと 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 との下位互換性を保つ必要があります)。詳しくは、ハードウェア ベンダー向けのガイダンスに関するページをご覧ください。