注
ドライバーが Windows 10 以降のみを対象とする場合は、WDF を再配布したり、ドライバー パッケージにコインストーラーを提供したりする必要はありません。 次の手順に従います:
- Visual Studio の [プロジェクトの設定] プロパティ ページの [ドライバーの設定] ->[ターゲット OS バージョン]で、Windows 10 以降の 選択します。 これは、.vcxproj ファイルに以下を追加することと同じです。
<PropertyGroup Label="Configuration">
<TargetVersion>Windows10</TargetVersion>
- INF Manufacturer セクションで、次のようにターゲット OS バージョンとして 10.0 を指定します。
[Manufacturer]
%MyMfg% = MyMfg, NTamd64.10.0
このトピックでは、Windows Driver Kit (WDK) の一部として含まれる Microsoft 提供の再頒布可能フレームワークの更新プログラムと、ドライバー パッケージに追加する更新プログラムを決定する方法について説明します。
再頒布可能フレームワークの更新により、オペレーティング システムに含まれるドライバーよりも新しいフレームワーク バージョンでビルドされたドライバーを実行できます。 たとえば、KMDF 1.11 は Windows 8 に含まれています。 ただし、Windows Vista または Windows 7 で KMDF 1.11 ドライバーを実行することはできます。 ただし、これを行う前に、KMDF 1.11 フレームワーク ライブラリが、以前のオペレーティング システム (この場合は KMDF 1.7 と KMDF 1.9) に含まれるフレームワーク ライブラリを置き換える必要があります。 これを行うには、Microsoft が提供する共同インストーラーまたは .msu ファイルをドライバー パッケージと共に再配布します。
ドライバー パッケージに共同インストーラーまたは .msu を含める必要があるのはいつですか?
まず、ドライバーがサポートする Windows のバージョンを決定します。 これに基づいて、 使用するフレームワークのバージョンを決定します。
選択した WDF バージョンがターゲット OS に付属しているバージョンよりも新しい場合は、共同インストーラーまたは .msu ファイルをドライバー パッケージに含めます。
たとえば、ドライバーを Windows 7 で実行するとします。 WDF 1.11 または WDF 1.9 を使用してドライバーをビルドできます。 Windows 7 で提供されている 1.9 を選択した場合、システムを更新する必要はありません。 一方、1.11 を選択した場合は、ドライバーに WDF 1.11 更新プログラム パッケージを含める必要があります。
共同インストーラーまたは .msu ファイルを含める必要がありますか?
新しいハードウェア デバイスをシステムに接続してドライバーのインストールがトリガーされ、ドライバーのみをインストールする場合は、ドライバー パッケージに共同インストーラーを含めます。 次に、「INF ファイルでの KMDF 共同インストーラーの指定」の説明に従って、 INF ファイルの共同インストーラーを参照します。
ドライバーに加えてアプリケーションをインストールする必要がある場合は、代わりに、関連する MSU パッケージ (kmdf-1.11-Win.6.0.msu など) を呼び出すセットアップ アプリケーションと共に再配布する必要があります。 この場合、INF エントリは必要ありません。
共同インストーラーと .msu ファイルの両方は必要ありません。
これらのファイルと含まれる内容はどこで確認できますか?
これらのファイルは WDK に含まれません。 代わりに、Microsoft ダウンロード センターとは別のダウンロードとして使用できます。 ダウンロード ページは Windows Driver Kit 8 再頒布可能コンポーネントです。
インストール後、MSU と共同インストーラーは %program files%\Windows Kits\8.0\redist\wdf の下にあります。
このディレクトリには、x86 および x64 用の次のファイルが含まれています。
- WdfCoinstaller01007.dll、 WdfCoinstaller01009.dll、 WdfCoinstaller01011.dll (KMDF 1.7/1.9/1.11 の共同インストーラー)。
- WUDFUpdate_01007.dll、 WUDFUpdate_01009.dll、 WUDFUpdate_01011.dll (UMDF の共同インストーラー)。
- winusbcoinstaller.dll、 winusbcoinstaller2.dll (WinUSB 1.5/1.9 の共同インストーラー)。
共同インストーラーの名前付けとバージョン管理
共同インストーラーの名前は WdfCoInstallerMMmmm.dllです。
- MM はメジャー バージョン番号です。
- mmm はマイナー バージョン番号です。
たとえば、共同インストーラーのバージョン 1.0 のファイル名は WdfCoInstaller01000.dllされ、バージョン 1.11 のファイル名は WdfCoInstaller01011.dll。
ドライバー パッケージに含める共同インストーラーのバージョンは、ドライバーの開発に使用するフレームワーク ライブラリのバージョンと一致している必要があります。
フレームワーク ライブラリのファイル名には、メジャー バージョン番号のみが含まれていることに注意してください。 ライブラリ ファイル名の詳細については、「 フレームワーク ライブラリのバージョン管理」を参照してください。