INX ファイルを使用した INF ファイルの作成

INX ファイル は、バージョン情報を表す文字列変数を含む INF ファイルです。 Microsoft Visual Studio を使用してドライバーをビルドすると、ビルドプロセスによってStampinfツールが実行され、INX ファイル内の文字列変数が、特定のハードウェアアーキテクチャまたはフレームワークバージョンを表すテキスト文字列に置き換えられます。 また、Stampinf ツールを手動で実行することもできます。このツールは、WDK の bin サブディレクトリにあります。

ドライバーの INX ファイルを作成する場合、複数のバージョン固有の INF ファイルを保持する必要はありません。 代わりに、1つの INX ファイルを作成し、Visual Studio または Stampinf を使用して、必要に応じてバージョン固有の INF ファイルを生成することができます。

Visual Studio 内の Stampinf プロパティを変更するには、ドライバーパッケージプロジェクトのプロパティページを開きます。 ソリューションエクスプローラーでパッケージプロジェクトを右クリックし、[ プロパティ] を選択します。 パッケージのプロパティページで、[ 構成プロパティ] をクリックし、[ StampInf] をクリックします。

WDK には、すべての KMDF および UMDF サンプルドライバー用の INX ファイルが含まれています。

INX ファイルには、次の文字列変数を含めることができます。

$ARCH $
Stampinf は、この変数をアーキテクチャ固有の文字列に置き換えます。 たとえば、x86 ビルド環境を使用している場合は、$ARCH $ が "x86" に置き換えられます。 次のように 、inf ファイル内で特定のアーキテクチャを指定するために必要な場所であればどこでも $ARCH $ string を使用できます。

[Manufacturer]
%StdMfg%=Standard,NT$ARCH$

$KMDFCOINSTALLERVERSION $
Stampinfツールの-k オプションを使用すると、Stampinf は、この変数を kmdf 共同インストーラーの特定のバージョンを表す文字列に置き換えます。 $KMDFCOINSTALLERVERSION $ 変数は、次のように、inf Ddinstall セクション内で、フレームワークの共同インストーラーを inf ファイル内で指定するときに使用できます。

[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 $
Visual Studio で kmdf バージョン番号 プロパティを設定した場合 (または Stampinfツールの-k オプションを使用した場合)、Stampinf は、この変数を kmdf の特定のバージョンを表す文字列に置き換えます。 $KMDFVERSION $ 変数は、次のように Kmdflibraryversion ディレクティブを指定する場合など、INF ファイル内でフレームワークのバージョンを指定するときに使用できます。

KmdfLibraryVersion = $KMDFVERSION$

$UMDFCOINSTALLERVERSION $

[SourceDisksFiles]
WudfUpdate_$UMDFCOINSTALLERVERSION$.dll=1

[CoInstallers_CopyFiles]
WudfUpdate_$UMDFCOINSTALLERVERSION$.dll

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WUDFUpdate_$UMDFCOINSTALLERVERSION$.dll"

$UMDFVERSION $

[UMDFYourDriver_Install]
UmdfLibraryVersion=$UMDFVERSION$

Stampinf では、INX ファイル内の UMDF 文字列変数を置き換える-u オプションもサポートされています。 ドライバーパッケージに、UMDF ベースのドライバーと KMDF ベースのドライバーの両方が含まれている場合は、1つの Stampinf コマンドと1つの INX ファイルで-k および-u オプションを使用できます。