INX ファイルを使用した INF ファイルの作成
"INX ファイル" は、バージョン情報を表す文字列変数を含む INF ファイルです。**ビルド ユーティリティおよび Stampinf ツールは、INX ファイルの文字列変数を、特定のハードウェア アーキテクチャまたはフレームワークのバージョンを表すテキスト文字列に置換します。
ドライバーの INX ファイルを作成する場合、バージョン固有の INF ファイルを複数保持する必要はありません。代わりに、1 つの INX ファイルを作成し、Stampinf を使用して、必要なときにバージョン固有の INF ファイルを生成できます。
WDK には、すべての KMDF サンプル ドライバー用の INF ファイルが含まれています。
INX ファイルには次の文字列変数を含めることができます。
$ARCH$
ビルド ユーティリティは、この変数をアーキテクチャ固有の文字列に置換します。たとえば、x86 ビルド環境を使用している場合、$ARCH$ が "x86" に置換されます。次のように、INF ファイル内 (INF Manufacturer セクション内など) で特定のアーキテクチャを指定する必要がある場合、$ARCH$ 文字列を使用できます。[Manufacturer] %StdMfg%=Standard,NT$ARCH$
$KMDFCOINSTALLERVERSION$
Stampinf ツールの -k オプションを使用すると、この変数は KMDF 共同インストーラーの特定のバージョンを表す文字列に置換されます。次のように、INF ファイル内 (INF DDInstall.CoInstallers セクション内など) でフレームワークの共同インストーラーを指定する場合、$KMDFCOINSTALLERVERSION$ 変数を使用できます。[ECHO_Device.NT.CoInstallers] AddReg=ECHO_Device_CoInstaller_AddReg CopyFiles=ECHO_Device_CoInstaller_CopyFiles [ECHO_Device_CoInstaller_AddReg] HKR,,CoInstallers32,0x00010000, "WdfCoInstaller$KMDFCOINSTALLERVERSION$.dll,WdfCoInstaller" [ECHO_Device_CoInstaller_CopyFiles] WdfCoInstaller$KMDFCOINSTALLERVERSION$.dll
$KMDFVERSION$
Stampinf ツールの -k オプションを使用すると、この変数は KMDF 共同インストーラーの特定のバージョンを表す文字列に置換されます。次のように、KmdfLibraryVersion ディレクティブを指定する場合など、INF ファイル内でフレームワークのバージョンを指定する場合、$KMDFVERSION$ 変数を使用できます。KmdfLibraryVersion = $KMDFVERSION$
ドライバーの INX ファイルを作成した後、ドライバーのビルド時にビルド ユーティリティが Stampinf を実行するコマンドを、ドライバーの makefile.inc ファイルに追加する必要があります。その後、ビルド ユーティリティを実行してドライバーをビルドするときに、ドライバーの INF ファイルも作成します。makefile.inc ファイルを変更する方法の詳細については、「Stampinf」(英語の可能性あり) を参照してください。
Stampinf では、INX ファイル内の UMDF 文字列変数を置換する -u オプションもサポートされています。ドライバー パッケージに UMDF ベースのドライバーと KMDF ベースのドライバーの両方が含まれている場合、1 つの Stampinf コマンドおよび 1 つの INX ファイルで -k オプションと -u オプションを使用できます。Stampinf と UMDF ベースのドライバーを使用する方法の詳細については、UMDF ドキュメントの「UMDF ベースのドライバーでの INX ファイルの使用」を参照してください。