InfVerif /h
注意
InfVerif /h 是在 Windows 11 版本 24H2 中引進的。
InfVerif /h
是 InfVerif 的新模式,會使用一組 INF 需求進行驗證,這些需求會隨著每個版本變更,以符合來自 硬體開發人員中心 的 WHQL 簽章需求。 經過一段時間后,需求會變得更嚴格,最終會與 驅動程式套件隔離 需求一致。
InfVerif /h
會檢查 INF 可安裝的所有 OS 版本,並使用該 OS 版本的適當規則自動評估 INF。 例如,在使用 版本裝飾 的 INF 檔案中,變更不同 OS 版本的行為:
Contoso = Models, NTAMD64, NTAMD64.10.0...22000
InfVerif /h
會在內部驗證此 INF 兩次,一旦 驗證 [Models]區段 [Models.NTAMD64],使用組建 21999 的規則(將使用該 [Models] 區段的最高操作系統版本),並驗證 [Models]區段 [Models.NTAMD64.10.0...22000] 使用最新的規則集。 只有單一 [Models] 區段的 INF 檔案只會根據最新的規則集進行驗證。
使用方式
若要使用 InfVerif /h
預設行為:
infverif.exe /h <INF file> [<INF file>]
InfVerif /h
也可讓您使用 '/rulever' 自變數指定 InfVerif 將使用的最高規則集,例如:
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 版本,將會在未來使用預期需要一個OS版本的規則。 'vnext' 所強制執行的規則並非最終規則,而且可能會變更最終版本,但旨在提供未來需求的深入解析。
infverif.exe /h /rulever vnext <INF file>
需求
規則 InfVerif /h
集符合 WHCP 程式的需求。 需求會定義為完整的 驅動程式套件隔離 需求,並套用至需求一組例外狀況。 每個版本都會移除某些例外狀況,直到 InfVerif /h
強制執行所有驅動程式套件隔離需求為止。
注意
不應使用下面所列的任何例外狀況,因為即將推出的版本中將不再允許使用這些例外狀況。
截至 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\Speech_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 路徑 |
HKLM | SOFTWARE\Microsoft\Windows\CurrentVersion\Audio |
HKLM | SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication |
HKLM | SOFTWARE\Microsoft\Windows\CurrentVersion\控制台 |
HKLM | SOFTWARE\Microsoft\Windows\CurrentVersion\Controls 資料夾 |
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 必須在 INF 中指定為 [DestinationDirs] 區段中所有專案的目的地位置。 下列值是這項需求的例外狀況:
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 |