クロスプラットフォームの INF ファイル
クロスプラットフォーム INF ファイルの最も簡単な方法は、プラットフォームのタイプごとに個別の INF ファイルを作成することですが、理由として、この方法を作成して維持するのが最も簡単であるためです。 プラットフォーム固有の INF ファイルの作成方法に関する詳細については、複数のプラットフォームとオペレーティングシステム用の INF ファイルの作成を参照してください。
デバイスにオペレーティングシステム固有のインストール要件がない場合は、デバイス用に単体のクロスオペレーティングシステムと、クロスプラットフォーム INF ファイルを作成できます。 例えば、特定のプラットフォームのオペレーティングシステムのバージョンによってデバイスをサポートするファイルまたはレジストリ設定が異なる場合、一般に、すべてのオペレーティングシステムのバージョンでサポートされている該当のプラットフォームのタイプに対して単体の INF ファイルを作成することはできません。
Windows 2000 とそれ以降のバージョンの Windows 対象の単一クロスオペレーティングシステムと、クロスプラットフォーム INF ファイルを作成する最も簡単な方法は次のとおりです。
Itanium ベースのシステムにコンポーネントをインストールするために必要なセクションの名前に .ntia64 のプラットフォーム拡張子を使用し、x64 ベースのシステムにコンポーネントをインストールするために必要なセクションの名前に .ntamd64 のプラットフォーム拡張子を使用します。
プラットフォーム拡張機能をサポートする全セクションで .ntと.ntx86 のプラットフォーム拡張子はオプションであるため、x86 ベースのシステムにコンポーネントをインストールするセクションの名前に .nt または .ntx86 のプラットフォームの拡張子を使用しないでください。
Microsoft Windows 2000 とそれ以降のバージョンの Windows 対象の単一クロスオペレーティングシステムおよびクロスプラットフォーム INF ファイルを作成するには、次のプロセスを使用します。
- Itanium ベースのシステムにコンポーネントをインストールするために必要なセクションの名前に .ntia64 のプラットフォーム拡張子を使用し、x64 ベースのシステムにコンポーネントをインストールするために必要なセクションの名前に .ntamd64 のプラットフォーム拡張子を使用します。
オペレーティングシステム固有の要件を有さないデバイスを対象に、単一のクロスオペレーティングシステムとクロスプラットフォーム INF ファイルを作成し、すべてのプラットフォームの種類をサポートし、Windows 2000 とそれ以降のバージョンの Windows をサポートするには、次の操作を行います。
INF ファイルの一般ガイドラインで説明されているように、すべての INF ファイルに必要な汎用エントリを含む有効な INF ファイルを作成します。
デバイスの モデル のセクション名と、デバイスがサポートする各プラットフォームのプラットフォーム拡張子エントリを指定する製造元識別子を含む、INF メーカーセクションを含めます。 たとえば、次のメーカーセクションでは、"AbcModelSection" の モデルのセクション名と、プラットフォーム拡張子の .ntia64 と .ntamd64 を指定します。 (.ntx86 のプラットフォーム拡張子は指定しないでください。)
[Manufacturer] ; The manufacturer-identifier for the Abc device. %ManufacturerName%=AbcModelSection,ntia64,ntamd64
プラットフォーム拡張子を含まない名前のモデルセクションを含めます。 Windows 2000 以降、オペレーティングシステムは x86 ベースのシステムに対してこのセクションを処理します。 たとえば、次の AbcModelSection セクションでは、Abc デバイスの インストールセクション名 に「AbcInstallSection」を指定します。
[AbcModelSection] %AbcDeviceName%=AbcInstallSection,Abc-hw-id
モデルの .ntia64 のセクションを含めます。 Windows Server 2003 SP1 とそれ以降のバージョンでは、Itanium ベースのシステムにモデルの .ntia64 のセクションが必要です。 もしモデルの .ntia64 のセクションが存在する場合、Windows Server 2003 と Windows XP では、Itanium ベースのシステムにもこのセクションが使用されます。 たとえば、次のAbcModelSection.ntia64 のセクションは、Abcデバイスの インストールセクション名 として「AbcInstallSection.ntia64」を指定します。
[AbcModelSection.ntia64] %AbcDeviceName%=AbcInstallSection.ntia64,Abc-hw-id
モデルの.ntia64 のセクションを含めます。 Windows Server 2003 SP1 とそれ以降のバージョンでは、x64 ベースのシステムにモデルの .ntamd64 のセクションが必要です。 もしモデルの .ntamd64 のセクションが存在する場合、Windows Server 2003 と Windows XP では、x64 ベースのシステムにもこのセクションが使用されます。 たとえば、次のAbcModelSection.ntamd64 のセクションは、Abcデバイスの インストールセクション名 として「AbcInstallSection.ntamd64」を指定します。
AbcModelSectionName.ntamd64 %AbcDeviceName%=AbcInstallSection.ntamd64,Abc-hw-id
プラットフォーム拡張子を含まないモデル のセクションで指定された インストールセクション名 と同じ名前の DDInstall のセクションを含めます。 たとえば、AbcModelSection セクションでは、次の AbcInstallSection セクションを指定します。 Windows では、このセクションを処理して、Windows 2000 またはそれ以降のバージョンの Windows を実行する x86 ベースのシステムに Abc デバイスをインストールします。
[AbcInstallSection] ; Install section entries go here. ...
モデルの .ntia64 のセクションで指定されたインストールセクション名と同じ名前の DDInstallの .ntia64 のセクションを含めます。 たとえば、AbcModelSection .ntia64 のセクションでは、次の AbcInstallSection .ntia64 のセクションを指定します。 Windows では、このセクションを処理して、Windows XP またはそれ以降のバージョンの Windows を実行する Itanium ベースのシステムに Abc デバイスをインストールします。
[AbcInstallSection.ntia64] ; Install section entries go here. ...
モデルの .ntamd64 のセクションで指定されたインストールセクション名と同じ名前の DDInstallの .ntamd64 のセクションを含めます。 たとえば、AbcModelSection .ntamd64 セクションでは、次の AbcInstallSection .ntamd64 のセクションを指定します。 Windows では、このセクションを処理して、Windows XP またはそれ以降のバージョンの Windows を実行する x64 ベースのシステムに Abc デバイスをインストールします。
[AbcInstallSection.ntamd64] ; Install section entries go here. ...
x86 ベースのインストールに必要な追加のデバイス固有のセクションを含めます。 これらのセクションの名前に .ntx86 プラットフォーム拡張子を含めないでください。 Windows では、Windows 2000 またはそれ以降のバージョンの Windows を実行する x86 ベースのシステムにデバイスをインストールするために、これらのセクションが既定で処理されます。
Windows XP またはそれ以降のバージョンの Windows を実行する Itanium ベースのシステムに必要な追加のデバイス固有のセクションを含めます。 これらのセクション名に .ntia64 の拡張子を含めます。
Windows XP またはそれ以降のバージョンの Windows を実行する x64 ベースのシステムに必要な追加のデバイス固有のセクションを含めます。 これらのセクション名に .ntamd64 の拡張子を含めます。
INF ファイルの選択とディレクティブの詳細については、INF セクションの概要とINF ディレクティブの概要を参照してください。