次の方法で共有


InfVerif /h

Note

InfVerif /h は、Windows 11バージョン 24H2 で導入されました。

InfVerif /h は、ハードウェア デベロッパー センターからの WHQL 署名の要件に合わせて各リリースで変更される一連の INF 要件を使用して検証する InfVerif の新しいモードです。 時間の経過と共に、要件はより厳しくなり、最終的には ドライバー パッケージの分離 要件と一致します。

InfVerif /h は、INF がインストールされる可能性があるすべての OS バージョンを調べ、その OS バージョンの適切な規則を使用して INF を自動的に評価します。 たとえば、 バージョン装飾 を使用 してさまざまな OS バージョン の動作を変更する INF ファイルでは、次のようになります。

Contoso = Models, NTAMD64, NTAMD64.10.0...22000

InfVerif /h は内部的にこの INF を 2 回検証 し、ビルド 21999 の規則 ([Models] セクションが使用される最上位の OS バージョン) を使用して [Models] セクション [Models.NTAMD64] を検証し、[Models]セクション [Models.NTAMD64.10.0. を検証します。22000] 最新のルールセットを使用します。 [Models] セクションが 1 つしかない INF ファイルは、最新の規則セットに対してのみ検証されます。

使用方法

既定の動作を使用して InfVerif /h を使用するには:

infverif.exe /h <INF file> [<INF file>]

InfVerif /h では、InfVerif が '/rulever' 引数を使用して使用する最も高い規則セットを指定することもできます。次に例を示します。

infverif.exe /h /rulever NTAMD64.10.0...17763 <INF file>

'/rulever' 引数を使用すると、INF の一部が無視されることがあります。 前の例で上記の引数を使用すると、[Models] セクション [Models.NTAMD64] が、ビルド 17763 のルールと [Models.NTAMD64.10.0. の規則を使用して検証されます。22000] は、高いルールセットが適用されないため、検証されません。

詳細オプションを追加すると、InfVerif は評価時に使用された最大ルールセットを出力します。

> infverif.exe /h /v <INF file>

Running in Verbose
Running signature requirements check
Using rules from OS build: 10.0.26080

> infverif.exe /h /rulever NTAMD64.10.0...17763 <INF file>

Running in Verbose
Running signature requirements check
Using rules from OS build: 10.0.17763

InfVerif /h では、将来のルール セットを使用することもできます。 組み込みの 'vnext' OS バージョンがあり、今後 1 つの OS リリースが必要になると予想されるルールを使用します。 'vnext' によって適用される規則は最終版ではなく、最終リリースで変更される可能性がありますが、将来の要件に関する適切な分析情報を提供することを目的としています。

infverif.exe /h /rulever vnext <INF file>

要件

InfVerif /h ルールセットは、WHCP プログラムの要件に合わせて調整されます。 要件は完全な ドライバー パッケージ分離 要件として定義され、要件には一部の例外が適用されます。 InfVerif /h がすべてのドライバー パッケージ分離要件を適用するまで、一部の例外は各リリースで削除されます。

Note

次に示す例外は、今後のリリースでは使用できなくなりますので、使用しないでください。

2024年4月現在の要件

レジストリ
INF ファイルはグローバル レジストリの場所を変更する必要はありません。代わりに、HKR レジストリ ルートのみを使用して、 AddReg ディレクティブを使用してレジストリ情報を 変更または作成します。 次のパスは、この要件に対する現在の例外です。

ルート サブキー
HKLM SYSTEM\CurrentControlSet
HKLM SOFTWARE\Classes
HKLM SOFTWARE\Khronos
HKLM SOFTWARE\Microsoft\Analog\Providers
HKLM SOFTWARE\Microsoft\Cellular\MVSettings\DeviceSpecific\CellUX
HKLM SOFTWARE\Microsoft\Cryptography\Calais\Readers
HKLM SOFTWARE\Microsoft\Cryptography\Calais\SmartCards
HKLM SOFTWARE\Microsoft\Cryptography\DRM_RNG
HKLM SOFTWARE\Microsoft\EAPOL
HKLM SOFTWARE\Microsoft\Palm\DelayManipulationDuration
HKLM SOFTWARE\Microsoft\Shell\OEM\QuickActions\ColorProfileQuickAction
HKLM SOFTWARE\Microsoft\音声_OneCore\AudioInput
HKLM SOFTWARE\Microsoft\Windows Media Foundation
HKLM SOFTWARE\Microsoft\Windows NT\CurrentVersion\AdaptiveDisplayBrightness
HKLM SOFTWARE\Microsoft\Windows NT\CurrentVersion\drivers.desc
HKLM SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32
HKLM SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM
HKLM SOFTWARE\Microsoft\Windows NT\CurrentVersion\OpenGlDrivers
HKLM SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\ScCertProp
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Audio
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Controls Folder
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Reliability\UserDefined
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
HKLM SOFTWARE\Wow6432Node\Microsoft\Windows Media Foundation
HKLM SOFTWARE\Wow6432Node\Khronos
HKLM SOFTWARE\WowAA32Node\Microsoft\Windows Media Foundation
HKLM SOFTWARE\WowAA32Node\Khronos
HKCR

ファイル パス
DIRID 13 は、 [DestinationDirs] セクションのすべてのエントリの宛先の場所として INF で指定する必要があります。 この要件の例外は次の値です。

DIRID値
DIRID 10
DIRID 11
DIRID 12
DIRID 23
DIRID 51
DIRID 52
DIRID 55
DIRID 16422
DIRID 16425
DIRID 16426
DIRID 16427
DIRID 16428
DIRID 66000
DIRID 66001
DIRID 66002
DIRID 66003
DIRID 66004