다음을 통해 공유


InfVerif /h

참고 항목

InfVerif /h는 Windows 11 버전 24H2에서 도입되었습니다.

InfVerif /h는 하드웨어 개발자 센터 WHQL 서명에 대한 요구 사항에 맞게 각 릴리스에서 변경되는 INF 요구 사항 집합을 사용하여 유효성을 검사하는 InfVerif의 새로운 모드입니다. 시간이 지남에 따라 요구 사항이 더 엄격해지고 결국 드라이버 패키지 격리 요구 사항에 맞게 조정됩니다.

InfVerif /h 는 INF가 설치할 수 있는 모든 OS 버전을 검사하고 해당 OS 버전에 대한 적절한 규칙을 사용하여 INF를 자동으로 평가합니다. 예를 들어 버전 장식을 사용하여 다른 OS 버전에 대한 동작을 변경하는 INF 파일에서 다음을 수행합니다.

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

InfVerif /h빌드 21999([Models] 섹션이 사용되는 가장 높은 OS 버전)에 대한 규칙을 사용하여 [Models] 섹션 [Models.NTAMD64]의 유효성을 검사한 후 [Models] 섹션 [Models.NTAMD64.10.0... 22000] 최신 규칙 집합을 사용합니다. 단일 [Models] 섹션만 있는 INF 파일은 최신 규칙 집합에 대해서만 유효성을 검사합니다.

사용

기본 동작을 사용하여 사용 InfVerif /h 하려면 다음을 수행합니다.

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

InfVerif /h 또한 InfVerif에서 '/rulever' 인수를 사용하여 사용할 가장 높은 규칙 집합을 지정할 수 있습니다. 예를 들면 다음과 같습니다.

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

'/rulever' 인수를 사용하면 INF의 일부 부분이 무시될 수 있습니다. 위의 인수를 이전 예제와 함께 사용하면 빌드 17763 및 [Models.NTAMD64 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 는 향후 규칙 집합을 사용할 수도 있습니다. 향후 하나의 OS 릴리스가 필요할 것으로 예상되는 규칙을 사용하는 기본 제공 'vnext' OS 버전이 있습니다. 'vnext'에 의해 적용되는 규칙은 최종 릴리스가 아니며 최종 릴리스에 대해 변경될 수 있지만 향후 요구 사항에 대한 좋은 인사이트를 제공하기 위한 것입니다.

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

요구 사항

규칙 집합은 InfVerif /h WHCP 프로그램의 요구 사항에 맞게 조정됩니다. 요구 사항은 전체 드라이버 패키지 격리 요구 사항으로 정의되며 일부 예외 집합이 요구 사항에 적용됩니다. 일부 예외는 모든 드라이버 패키지 격리 요구 사항을 적용할 때까지 InfVerif /h 각 릴리스에서 제거됩니다.

참고 항목

아래에 나열된 예외는 사용이 향후 릴리스에서 더 이상 허용되지 않으므로 사용하면 안 됩니다.

2024년 4월 현재 요구 사항

Registry
INF 파일은 전역 레지스트리 위치를 수정해서는 안 되며 대신 HKR 레지스트리 루트만 사용하여 AddReg 지시문을 사용하여 레지스트리 정보를 수정하거나 만들 수 있습니다. 다음 경로는 이 요구 사항에 대한 현재 예외입니다.

루트 하위 키
HKLM SYSTEM\CurrentControlSet
HKLM SOFTWARE\Classes
HKLM SOFTWARE\Khronos
HKLM SOFTWARE\Microsoft\Analog\Providers
HKLM SOFTWARE\Microsoft\Cell\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\제어판
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