InfVerif /h
Remarque
InfVerif /h a été introduit dans Windows 11, version 24H2.
InfVerif /h
est un nouveau mode de InfVerif qui valide l’utilisation d’un ensemble de spécifications INF qui changent avec chaque version pour s’aligner sur les exigences d’une signature WHQL du Centre de développement matériel. Au fil du temps, les exigences deviendront plus strictes et s'aligneront finalement sur les exigences d'isolation des packages de pilotes .
InfVerif /h
examine toutes les versions du système d’exploitation où l'INF peut être installé et évalue automatiquement l’INF à l’aide des règles appropriées pour cette version du système d’exploitation. Par exemple, dans un fichier INF qui utilise des décorations de version pour modifier le comportement pour différentes versions du système d’exploitation :
Contoso = Models, NTAMD64, NTAMD64.10.0...22000
InfVerif /h
validera en interne ce inf deux fois, une fois la validation de la section [Modèles] [Models.NTAMD64] à l’aide des règles de build 21999 (la version de système d’exploitation la plus élevée où la section [Modèles] sera utilisée), et une fois la section [Modèles] [Models.NTAMD64.10.0... 22000] à l’aide du dernier ensemble de règles. Un fichier INF qui n’a qu’une seule section [Modèles] ne sera validé que par rapport au jeu de règles le plus récent.
Utilisation
Pour utiliser InfVerif /h
à l’aide du comportement par défaut :
infverif.exe /h <INF file> [<INF file>]
InfVerif /h
vous permet également de spécifier le jeu de règles le plus élevé utilisé par InfVerif à l’aide de l’argument « /rulever », par exemple :
infverif.exe /h /rulever 10.0...17763 <INF file>
L’utilisation de l’argument « /rulever » peut entraîner l’ignorance de certaines parties de l’INF. À l’aide des arguments ci-dessus avec l’exemple précédent, la section [Models][Models.NTAMD64] sera validée à l’aide des règles de build 17763 et [Models.NTAMD64.10.0... 22000] ne sera pas validé, car l’ensemble de règles spécifié ne s’applique pas à celui-ci.
L’ajout d’une option en clair fera en sorte que InfVerif imprime le jeu de règles maximum utilisé lors de son évaluation :
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
peut également utiliser un ensemble de règles futur. Il existe une version intégrée du système d’exploitation « vnext » qui utilisera les règles censées être requises pour une version du système d’exploitation à l’avenir. Les règles appliquées par « vnext » ne sont pas finales et sujettes à modification pour la version finale, mais elles sont destinées à fournir un bon aperçu des exigences futures.
infverif.exe /h /rulever vnext <INF file>
Exigences
Les ensembles de règles InfVerif /h
sont alignés sur les exigences du programme WHCP. Les exigences sont définies comme étant les exigences complètes d’isolation des packages de pilotes, avec un ensemble d’exceptions appliqué aux exigences. Certaines exceptions seront supprimées à chaque nouvelle version jusqu'à ce que InfVerif /h
impose toutes les exigences d'isolation des packages de pilotes.
Remarque
Toutes les exceptions répertoriées ci-dessous ne doivent pas être utilisées, car l’utilisation de celles-ci ne sera plus autorisée dans une prochaine version.
Exigences actuelles depuis avril 2024
Registre
Les fichiers INF ne doivent pas modifier les emplacements de Registre globaux et utiliser uniquement la racine du registre HKR pour modifier ou créer des informations de Registre avec une directive AddReg . Les chemins d’accès suivants sont des exceptions actuelles à cette exigence :
Racine | Sous-clé |
---|---|
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\Chemins d’accès de l’application |
HKLM | SOFTWARE\Microsoft\Windows\CurrentVersion\Audio |
HKLM | SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication |
HKLM | SOFTWARE\Microsoft\Windows\CurrentVersion\Panneau de configuration |
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 |
chemins d’accès aux fichiers
DIRID 13 doit être spécifié dans l’INF comme emplacement de destination pour toutes les entrées de la section [DestinationDirs]. Les valeurs suivantes sont des exceptions à cette exigence :
Valeur 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 |