InfVerif /h
Observação
O InfVerif /h foi introduzido no Windows 11, versão 24H2.
O InfVerif /h
é um novo modo do InfVerif que valida usando um conjunto de requisitos INF que mudam a cada versão para se alinhar com os requisitos de uma assinatura WHQL do Centro de Desenvolvimento de Hardware. Ao longo do tempo, os requisitos se tornarão mais rigorosos e, eventualmente, se alinharão aos requisitos de isolamento do pacote de driver.
O InfVerif /h
examina todas as versões do sistema operacional onde o INF pode ser instalado e avalia automaticamente o INF usando as regras apropriadas para essa versão do sistema operacional. 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
O InfVerif /h
validará internamente esse INF duas vezes, uma vez validando a seção [Models] [Models.NTAMD64] usando as regras da compilação 21999 (a versão mais recente do sistema operacional em que essa seção [Models] será usada), e uma vez validando a seção [Models] [Models.NTAMD64.10.0...22000] usando o conjunto de regras mais recente. Um arquivo INF que tenha apenas uma única seção [Models] só será validado com base no conjunto de regras mais recente.
Uso
Para usar o InfVerif /h
com o comportamento padrão:
infverif.exe /h <INF file> [<INF file>]
O InfVerif /h
também permite que você especifique o conjunto de regras mais avançado que o InfVerif usará com o argumento '/rulever', por exemplo:
infverif.exe /h /rulever NTAMD64.10.0...17763 <INF file>
O uso do 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 da compilação 17763, e [Models.NTAMD64.10.0...22000] não será validada, pois o conjunto de regras especificado não se aplica a ela.
Adicionar a opção Verbose 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 NTAMD64.10.0...17763 <INF file>
Running in Verbose
Running signature requirements check
Using rules from OS build: 10.0.17763
O InfVerif /h
também pode usar um conjunto de regras futuras. Há uma versão interna do sistema operacional "vnext" que usará as regras esperadas para ser necessária uma versão do sistema operacional no futuro. As regras aplicadas 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 sobre os requisitos futuros.
infverif.exe /h /rulever vnext <INF file>
Requisitos
Os conjuntos de regras do InfVerif /h
estão alinhados com os requisitos do programa WHCP. Os requisitos são definidos como os requisitos de isolamento do pacote de driver completo, com alguns conjuntos de exceções aplicados aos requisitos. Algumas exceções serão removidas a cada versão até que o InfVerif /h
cumpra 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 de registro global e, em vez disso, devem usar apenas a raiz do registro HKR para modificar ou criar informações de registro com uma diretiva AddReg. Os seguintes caminhos são exceções atuais a este 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\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 |
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 este requisito:
Valor de 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 |