INF Modelsセクション
製造元ごとの Models セクションは、少なくとも 1 つのデバイスを識別し、そのデバイスの INF ファイルの DDInstall セクションを参照し、そのデバイスの一意のモデル セクションハードウェア識別子 (ID) を指定します。
製造元 ごとの モデル セクションのエントリでは、初期ハードウェア ID によって指定されたデバイスと互換性があり、同じドライバーによって制御されるモデルに対して、1 つ以上の追加のデバイス ID を指定することもできます。
[models-section-name] |
[models-section-name.TargetOSVersion] (Windows XP and later versions of Windows)
device-description=install-section-name,[hw-id][,compatible-id...]
[device-description=install-section-name,[hw-id][,compatible-id]...] ...
Note
INF は、models セクションのエントリごとに少なくとも 1 つのデバイス ID を指定する必要があります。 これは、ハードウェア ID または互換性のある ID のいずれかです。
エントリ
device-description
インストールするデバイスを識別します。表示される文字の一意の組み合わせとして、または INF 文字列セクションで定義された %strkey% トークンとして表されます。 デバイス記述の最大長 (文字数) はLINE_LEN。
install-section-name
デバイスに使用する INF インストール セクションの名前 (および互換性のあるデバイスのモデルがある場合) を指定します。 詳細については INF DDInstall セクションを参照してください。
hw-id
デバイスを識別するベンダー定義 の ハードウェア ID 文字列を指定します。この文字列は、PnP マネージャーがこのデバイスの INF ファイルの一致を検索するために使用します。 このようなハードウェアIDには、次のいずれかの形式があります。
enumerator\enumerator-specific-device-id
1つの列挙子によってPnPマネージャーに報告される個々のPnPデバイスの一般的な形式です。 たとえば、 USB\VID_045E&PID_00B
USB バス上の Microsoft HID キーボード デバイスを識別します。 列挙子に応じて、このような仕様には、 PCI\VEN_1011&DEV_002&SUBSYS_00000000&REV_02
などのデバイスのハードウェアリビジョン番号を含めることもできます。
*enumerator-specific-device-id
デバイスが複数の列挙子でサポートされていることをアスタリスク (*) で示します。 たとえば、 *PNP0F01
は、 Microsoft シリアル マウスを識別します。このシリアル マウスには、互換性 ID の SERENUM\PNP0F01
仕様も含まれています。
device-class-specific-ID
バスのハードウェア仕様で説明されているように、I/O バス固有の形式で、その種類の I/O バス上のすべての周辺機器のハードウェア ID です。
compatible-id
互換性のあるデバイスを識別するベンダー定義 の 互換性 ID 文字列を指定します。 Models セクションのエントリには、任意の数の 互換性 ID 値を指定できます。各値はコンマ (,) で区切られます。 このような互換性のあるデバイスやデバイス モデルはすべて、初期 hw-id で指定されたデバイスと同じドライバーによって制御されます。
解説
各 models セクション名 は、INF ファイルの INF Manufacturer セクション に一覧表示されている必要があります。 特定の製造元に対して INF ファイルがインストールされるデバイス (およびドライバー) の数に応じて、製造元 ごとの モデル セクションに 1 つ以上のエントリを含めることができます。
各 install-section-name は、INF ファイル内で一意である必要があり、「INF ファイルの一般的な構文規則」で説明されているセクション名を定義するための一般的な規則に従う必要があります。 製造元ごとの Models セクションで参照される DDInstall セクション名には、特定の install-section-name に拡張機能を追加することもできます。そのため、特定のデバイスの OS 固有またはプラットフォーム固有のインストール用に追加の DDInstall セクションを定義します。 クロスプラットフォーム システム ファイルで拡張機能を使用する方法の詳細については、 INF ファイルの作成も参照してください。
INF ControlFlags セクション では、指定した hw-id または compatible-id 値を指定して、手動インストール時にそのデバイスがエンド ユーザーに表示されないようにすることもできます。 hw-id と compatible-id の値の詳細については、「デバイス識別文字列」を参照してください。
INF ファイルを使用してインストールされるデバイスとドライバーごとに、デバイス インストーラーは INF 製造元セクション と製造元ごとの モデル セクションで提供される情報を使用して、デバイスの説明、製造元名、デバイス ID (インストールが手動の場合)、および場合によっては、レジストリの互換性リストの値エントリを生成します。
モデル セクション名 には、 TargetOSVersion 装飾を含めることができます。 この装飾の詳細については、 INF 製造元セクション、特に「解説」セクションを参照してください。
重要
Windows Server 2003 SP1 以降では、INF ファイルは、INF Manufacturer セクションの models-section-name エントリを、関連する INF Models セクション名と共に、x86 以外のターゲット オペレーティング システムのバージョンを指定するためのプラットフォーム拡張機能と共に装飾する必要があります。 これらのプラットフォーム拡張機能は、x86 ベースの対象となるオペレーティングシステムのバージョンの INF ファイルでは必要ありませんが、勧められます。
例
この例では、一部のデバイス/モデルの DDInstall セクションを定義する、システム マウス クラス インストーラーの INF ファイルからいくつかの代表的なエントリを含む製造元ごとの Models セクションを示します。
[Manufacturer]
%StdMfg% = StdMfg,NTamd64 ; (Standard types)
%MSMfg% = MSMfg,NTamd64 ; Microsoft
; ... %otherMfg% omitted here
[StdMfg.NTamd64] ; per-Manufacturer Models section
; Std serial mouse
%*pnp0f0c.DeviceDesc%= Ser_Inst,*PNP0F0C,SERENUM\PNP0F0C,SERIAL_MOUSE
; ... more StdMfg entries
OS 固有の INF モデルセクションのその他の例については、 INF Manufacturer セクションの 例 セクションを参照してください。また、 プラットフォーム拡張機能とオペレーティング システムのバージョンの組み合わせも参照してください。