INF ControlFlags セクション

ControlFlags セクションでは、インストール時に Windows が特定の一意のアクションを実行する必要があるデバイスを識別します。

[ControlFlags]

ExcludeFromSelect=* | 
ExcludeFromSelect=device-identification-string[,device-identification-string] ...] | 
[ExcludeFromSelect.nt=device-identification-string[,device-identification-string] ...] | 
[ExcludeFromSelect.ntx86=device-identification-string[,device-identification-string] ...] | 
[ExcludeFromSelect.ntia64=device-identification-string[,device-identification-string] ...]  |  (Windows XP and later versions of Windows)
[ExcludeFromSelect.ntamd64=device-identification-string[,device-identification-string] ...]  |  (Windows XP and later versions of Windows)
[ExcludeFromSelect.ntarm=device-identification-string[,device-identification-string] ...]  |  (Windows 8 and later versions of Windows)
[ExcludeFromSelect.ntarm64=device-identification-string[,device-identification-string] ...]  |  (Windows 10 version 1709 and later versions of Windows)

[CopyFilesOnly=device-identification-string[,device-identification-string] ...]
[InteractiveInstall=device-identification-string[,device-identification-string] ... ]
[RequestAdditionalSoftware=*] | 
[RequestAdditionalSoftware=device-identification-string[,device-identification-string] ...]  (Windows 7 through Windows 10 version 1709)

エントリ

device-identification-string
製造元ごとの INF モデル セクションで指定された ハードウェア ID または 互換性のある ID を識別します。 各文字列は、コンマ (,) で次の文字列から区切る必要があります。

ExcludeFromSelect
特定のユーザー インターフェイス表示からすべてのデバイス (* が指定されている場合) または指定したデバイスの一覧を削除します。この一覧から、ユーザーはインストール用に特定のデバイスを選択する必要があります。

Windows 2000 以降のバージョンの Windows の場合、指定されたデバイスは、新しいハードウェアの検出ウィザードとハードウェア更新ウィザードによって表示されます。

このディスプレイから OS 非互換デバイスまたはプラットフォーム非互換デバイスのセットを除外するために、1 つ以上の ExcludeFromSelect エントリに次の大文字と小文字を区別しない拡張機能を追加できます。

.nt
Windows 2000 以降のバージョンの Windows を実行しているコンピューターには、これらのデバイスを表示しないでください。

.ntx86
Windows 2000 以降のバージョンの Windows を実行しているx86ベースのコンピューターには、これらのデバイスを表示しないでください。

.ntia64
Windows XP 以降のバージョンの Windows を実行しているItaniumベースのコンピューターには、これらのデバイスを表示しないでください。

.ntamd64
Windows XP 以降のバージョンの Windows を実行しているx64ベースのコンピューターには、これらのデバイスを表示しないでください。

.ntarm
Windows 8 以降のバージョンの Windows を実行しているArmベースのコンピューターには、これらのデバイスを表示しないでください。

.ntarm64
これらのデバイスは、Windows 10 バージョン 1709 以降のバージョンの Windows を実行している Arm64 ベースのコンピューターには表示しないでください。

システム定義の .nt, .ntx86, .ntia64, .ntamd64, .ntarm, および .ntarm64 の拡張機能の使用方法の詳細については、「複数のプラットフォームとオペレーティング システム用の INF ファイルの作成」を参照してください。

CopyFilesOnly
デバイス ハードウェアにアクセスできないか、まだ使用できないため、特定のデバイスに対して INF で指定されたファイルのみをインストールします。

このエントリはほとんど使用しません。 ただし、カードが現在使用中の特定のスロットに後で装着されるデバイスのドライバーをプレインストールするために使用できます。 たとえば、INF で指定されたファイルをターゲットに転送するために、特定のスロットに現在座っているデバイスが必要な場合、INF にはこのエントリが含まれます。

InteractiveInstall
指定したデバイスの一覧をユーザーのコンテキストに強制的にインストールします。 各行では、1 つ以上のハードウェア ID または互換性のある ID を指定でき、1 行以上の行を指定できます。

このエントリは省略可能です。 デバイスをインストールする推奨される方法は、このエントリを省略し、可能であれば、Windows が信頼されたシステム スレッドのコンテキストでデバイスをインストールできるようにすることです。 ただし、デバイスのインストール時にユーザーのログインがデバイスで絶対に必要な場合は、デバイス INF にこのエントリを含めます。

RequestAdditionalSoftware
すべての (* が指定されている場合) または指定したデバイスの一覧に、デバイスの ドライバー パッケージ を通じてインストールされたソフトウェアよりも追加のソフトウェアが必要になる可能性があることを指定します。 たとえば、 RequestAdditionalSoftware エントリを使用して、ドライバー パッケージに含まれなかったデバイス固有の新しいソフトウェアまたは更新されたソフトウェアをインストールできます。

Note

* を指定しない場合は、 RequestAdditionalSoftware エントリで指定された各デバイスを INF Models セクション内で定義する必要があります。

このエントリは省略可能であり、Windows 7 から Windows 10 バージョン 1709 でサポートされています。

Windows がデバイスの ドライバー パッケージ をインストールした後、INF ファイル内で RequestAdditionalSoftware エントリが指定されている場合、プラグ アンド プレイ (PnP) マネージャーは次の手順を実行します。

  1. PnP マネージャーは、 RequestAdditionalSoftware の種類で問題レポートとソリューション (PRS) エラー レポートを生成します。 このレポートには、デバイスの特定のハードウェア ID とコンピューターのシステム アーキテクチャに関する情報が含まれています。

  2. デバイス固有のソフトウェアに対して独立系ハードウェア ベンダー (IHV) によって提供されるソリューションがある場合、ソリューションはコンピューターにダウンロードされます。

    Note

    ソリューションのダウンロードでは、ソフトウェア自体はインストールされません。

  3. デバイス固有のソフトウェアがコンピューターにインストールされていない場合、PnP マネージャーはソリューションをユーザーに提示し、ソフトウェアをダウンロードするためのリンクを提供します。 ユーザーは、ソリューションに記載されている手順に従って、このソフトウェアをダウンロードしてインストールすることができます。

解説

通常、 ControlFlags セクションには、製造元ごとの INF モデル セクションに記載されているが、手動インストール時にオプションとしてエンド ユーザーに表示されないデバイスを識別するための ExcludeFromSelect エントリが 1 つ以上あります。

ExcludeFromSelect エントリにデバイスの ハードウェア ID または 互換性のある ID を一覧表示すると、エンド ユーザーに表示されるディスプレイから削除されます。 ExcludeFromSelect 値にアスタリスク (*) を 指定すると、 INF ファイルで定義されているすべてのデバイス/モデルがこのユーザー表示リストから削除されます。

INF ライターは、次の 状況でのみ、控えめに InteractiveInstall ディレクティブを使用する必要があります。

  • ハードウェア ID が破損しているか、正しく定義されていないデバイスのドライバーをインストールする。 たとえば、2 つ以上の異なるデバイスが同じハードウェア ID を共有している場合などです。 このケースは、プラグ アンド プレイ標準では厳密に禁止されていますが、一部のハードウェア ベンダーでは、ハードウェアでこのエラーが発生しています。
  • 独自のドライバーを必要とし、絶対に汎用クラス ドライバーまたはオペレーティング システムで提供されている別のドライバーを使用できないデバイスのドライバーをインストールします。 InteractiveInstall エントリは、互換性のある ID の一致の確認をユーザーに求めるデバイス マネージャーを強制します。

Note

今後、INF ファイルに InteractiveInstall エントリが含まれるデバイスには、WHQL によって Windows ロゴが付与されない可能性があります。

PnP デバイスを排他的にインストールする INF ファイルは、それぞれのデバイス セットアップ クラス GUID 設定の NoInstallClass 値エントリを TRUE に設定しない限り、 ControlFlags セクションを持つことができます。 これらの設定の詳細については、 INF ClassInstall32 セクションを参照してください。

システム マウス クラス INF の ControlFlags セクションのこの例では、x86 プラットフォームにインストールできないデバイス/モデルの表示を抑制します。

[ControlFlags]
; Exclude all bus mice and InPort mice for x86 platforms
ExcludeFromSelect.ntx86=*PNP0F0D,*PNP0F11,*PNP0F00,*PNP0F02,*PNP0F15
; Hide this entry always
ExcludeFromSelect=UNKNOWN_MOUSE

次の INF ファイル フラグメントは、2 つのデバイスを示しています。1 つは完全に PnP 対応であり、インストール中にユーザーの介入を必要とせず、もう 1 つは独自のドライバーを必要とし、他のドライバーを使用することはできません。 2 番目のデバイスに InteractiveInstall を指定すると、Windows はユーザーのコンテキスト (管理者権限を持つユーザー) にこのデバイスを強制的にインストールします。 これには、必要に応じてドライバー ファイル (INF ファイル、ドライバー ファイルなど) の場所をユーザーに求めるメッセージが含まれます。

; ...
[Manufacturer]
%Mfg% = ModelsSection

[ModelsSection]
; Models section, with two entries
%Device1.DeviceDesc% = Device1.Install, \
    PCI\VEN_1000&DEV_0001&SUBSYS_00000000&REV_01
%Device2.Device.Desc%= Device2.Install, \
    PCI\VEN_1000&DEV_0001&SUBSYS_00000000&REV_02

[ControlFlags]
InteractiveInstall = \
  PCI\VEN_1000&DEV_0001&SUBSYS_00000000&REV_02
; ...

関連項目

ClassInstall32

メーカー

Models