InfVerif /h
Nota:
InfVerif /h se introdujo en Windows 11, versión 24H2.
InfVerif /h
es un nuevo modo de InfVerif que valida el uso de un conjunto de requisitos de INF que cambian con cada versión para ajustarse a los requisitos de una firma WHQL del Centro de desarrollo de hardware. Con el tiempo, los requisitos se volverán más estrictos y se irán ajustando a los requisitos de aislamiento de paquetes de controladores.
InfVerif /h
examina todas las versiones del sistema operativo en las que INF se puede instalar y evalúa el INF con las reglas adecuadas en esa versión del sistema operativo automáticamente. Por ejemplo, en un archivo INF que usa decoraciones de versiones para cambiar el comportamiento de diferentes versiones del sistema operativo:
Contoso = Models, NTAMD64, NTAMD64.10.0...22000
InfVerif /h
validará internamente este INF dos veces, una vez validando la sección [Models] [Models.NTAMD64] con las reglas de la compilación 21999 (la versión más actualizada del sistema operativo donde se usará esa sección [Models]) y otra vez validando la sección [Models] [Models.NTAMD64.10.0... 22000] con el conjunto de reglas más reciente. Un archivo INF que solo tiene una sola sección [Models] solo se validará en el conjunto de reglas más reciente.
Uso
Cómo usar InfVerif /h
con el modo de uso predeterminado:
infverif.exe /h <INF file> [<INF file>]
InfVerif /h
también permite indicar el conjunto de reglas más alto que InfVerif usará con el argumento '/rulever', por ejemplo:
infverif.exe /h /rulever NTAMD64.10.0...17763 <INF file>
El uso del argumento '/rulever' puede provocar que se omitan algunas partes del INF. Con los argumentos anteriores con el ejemplo anterior, la sección [Models] [Models.NTAMD64] se validará con las reglas de la compilación 17763 y [Models.NTAMD64.10.0... 22000] no se validará porque el conjunto de reglas correspondiente no se aplica a él.
Si se agregan opciones detalladas, InfVerif imprimirá el conjunto de reglas máximo usado durante su evaluación:
> 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
también puede usar un conjunto de reglas futuro. Hay una versión del sistema operativo 'vnext' integrada que usará las reglas que se espera que sean necesarias en una versión del sistema operativo en el futuro. Las reglas aplicadas por 'vnext' no son finales y están sujetas a cambios para la versión final, pero están pensadas para proporcionar una buena visión de los requisitos futuros.
infverif.exe /h /rulever vnext <INF file>
Requisitos
Los conjuntos de reglas InfVerif /h
se ajustan a los requisitos del programa WHCP. Los requisitos se definen como los requisitos de aislamiento de paquetes de controladores completos, con algunos conjuntos de excepciones aplicados a los requisitos. Algunas excepciones se quitarán de cada versión hasta que InfVerif /h
aplique todos los requisitos de aislamiento de paquetes de controladores.
Nota:
Las excepciones enumeradas a continuación no deben utilizarse, ya que dejarán de estar admitidas en una próxima versión.
Requisitos actuales a partir de abril de 2024
Registro
Los archivos INF no deben modificar ninguna ubicación global del registro y, en su lugar, deben usar solo la raíz del registro HKR para modificar o crear información del registro con una directiva AddReg. Las siguientes rutas de acceso son excepciones actuales a este requisito:
Root | Subclave |
---|---|
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 |
Rutas de acceso a archivos
DIRID 13 debe especificarse en el INF como ubicación de destino para todas las entradas de la sección [DestinationDirs]. Los valores siguientes son excepciones a este 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 |