Compartilhar via


InfVerif /h

Observação

InfVerif /h foi introduzido no Windows 11, versão 24H2.

InfVerif /h é um novo modo de InfVerif que valida o uso de um conjunto de requisitos INF que são alterados com cada versão para se alinhar aos requisitos de uma assinatura WHQL do Centro de Desenvolvimento de Hardware. Com o tempo, os requisitos se tornarão mais rigorosos e, eventualmente, se alinharão aos requisitos de isolamento do pacote de driver .

InfVerif /h examina todas as versões do sistema operacional em que o INF pode instalar e avalia o INF usando as regras apropriadas para essa versão do sistema operacional automaticamente. Por exemplo, em um arquivo INF que usa decorações de versão para alterar o comportamento de diferentes versões do sistema operacional:

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

InfVerif /h validará internamente este INF duas vezes, uma vez validando a seção [Models] [Models.NTAMD64] usando as regras para o build 21999 (a versão mais alta do sistema operacional em que essa seção [Modelos] será usada) e uma vez validando a seção [Modelos] [Models.NTAMD64.10.0... 22000] usando o conjunto de regras mais recente. Um arquivo INF que tenha apenas uma única seção [Modelos] será validado apenas no conjunto de regras mais recente.

Uso

Para usar o InfVerif /h com o comportamento padrão:

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

InfVerif /h também permite especificar o conjunto de regras mais alto que o InfVerif usará usando o argumento '/rulever', por exemplo:

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

Usar o argumento '/rulever' pode fazer com que algumas partes do INF sejam ignoradas. Usando os argumentos acima com o exemplo anterior, a seção [Models][Models.NTAMD64] será validada usando as regras para o build 17763 e [Models.NTAMD64.10.0... 22000] não será validado, pois o conjunto de regras especificado não se aplica a ele.

Adicionar a opção detalhada fará com que o InfVerif imprima o conjunto de regras máximo usado durante sua avaliação:

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 10.0...17763 <INF file>

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

InfVerif /h também pode usar um conjunto de regras futuro. Há uma versão integrada do sistema operacional 'vnext' que usará as regras que se espera serem necessárias em uma versão futura do sistema operacional. As regras impostas pelo 'vnext' não são finais e estão sujeitas a alterações para a versão final, mas destinam-se a fornecer uma boa visão dos requisitos futuros.

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

Requisitos

Os InfVerif /h conjuntos de regras estão alinhados com os requisitos do programa WHCP. Os requisitos estão definidos como os requisitos completos para o isolamento do pacote de driver, com a aplicação de algumas exceções a esses requisitos. Algumas exceções serão removidas a cada versão até InfVerif /h impor todos os requisitos de isolamento do pacote de driver.

Observação

Quaisquer exceções listadas abaixo não devem ser usadas, pois o uso delas não será mais permitido em uma versão futura.

Requisitos atuais a partir de abril de 2024

Registro


Os arquivos INF não devem modificar nenhum local global do Registro e, em vez disso, usar apenas a raiz do Registro HKR para modificar ou criar informações do Registro com uma diretiva AddReg. Os seguintes caminhos são exceções atuais a esse requisito:

Raiz Subchave
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 Paths
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Audio
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication
HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Painel de Controle
HKLM Pasta 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  

Caminhos de arquivo


DIRID 13 deve ser especificado no INF como o local de destino para todas as entradas na seção [DestinationDirs]. Os seguintes valores são exceções a esse requisito:

Valor 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