드라이버 확인 로그 만들기
Windows 하드웨어 인증 프로그램에는 드라이버 제출을 위한 DVL(드라이버 확인 로그)이 필요합니다. DVL에는 CA(코드 분석), SDV(정적 드라이버 검증 도구) 및 CodeQL의 결과에 대한 요약이 포함될 수 있습니다. DVL에는 소스 코드 정보가 포함되어 있지 않습니다. 드라이버에 대한 DVL을 만들기 전에 필요에 따라 CodeQL, 코드 분석 도구 및 정적 드라이버 검증 도구를 실행해야 합니다. 자세한 내용은 정적 도구 로고 테스트 및 CodeQL 및 정적 도구 로고 테스트를 참조하세요.
드라이버 확인 로그를 만들려면
드라이버 준비
- 코드 분석 도구를 실행하기 전에 최신 WDK(Windows 드라이버 키트)를 사용하여 드라이버를 빌드하고 연결할 수 있는지 확인합니다.
- 드라이버 솔루션의 경우 릴리스 구성을 솔루션 구성으로, x64를 솔루션 플랫폼으로 선택했는지 확인합니다.
필요한 테스트 확인 및 실행
- 정적 도구 로고 테스트를 참조하여 인증하려는 Windows 버전에 필요한 테스트를 확인합니다.
필요에 따라 다음 테스트를 실행합니다.
- CodeQL을 실행합니다. 발견된 결함을 해결하고 해결합니다. "반드시 수정해야 함"으로 간주되는 결함이 수정되지 않으면 인증이 실패합니다. CodeQL 및 정적 도구 로고 테스트에 대한 자세한 내용은 CodeQL 및 정적 도구 로고 테스트를 참조하세요.
- 정적 드라이버 검증 도구를 실행 합니다. 로그 파일을 만드는 방법에 대한 자세한 내용은 정적 드라이버 검증 도구에 대한 로그 파일 만들기 및 정적 드라이버 검증 도구를 사용하여 드라이버에서 결함을 찾는 방법을 참조하세요.
- 드라이버에 대한 코드 분석 도구를 실행합니다. 발견된 결함을 해결하고 해결합니다. 코드 분석 도구 및 드라이버에 대한 코드 분석을 실행하는 방법에 대한 로그 파일 만들기를 참조하세요. 코드 분석에 대한 자세한 내용은 코드 분석을 사용하여 C/C++ 코드 품질 분석을 참조하세요.
드라이버 확인 로그 만들기
드라이버 확인 로그를 만듭니다. 드라이버 메뉴에서 드라이버 확인 로그 만들기를 선택합니다.
코드 분석 로그, 정적 드라이버 검증 도구 로그 및 CodeQL 로그 파일이 검색되었는지 확인합니다. 만들기를 실행합니다.
드라이버 확인 로그의 파일 이름 확장명은 다음과 입니다. DVL.XML. 로그는 프로젝트 폴더(예: \myDriverProject\myDriverName)에 만들어집니다. DVL.XML.
참고 SDV는 드라이버의 클린 다시 빌드를 수행하여 코드 분석 로그를 제거합니다. 따라서 CA를 실행하기 전에 SDV를 실행해야 합니다.
참고 Windows 하드웨어 랩 키트를 사용하여 드라이버를 테스트할 준비가 되면 드라이버 확인 로그를 테스트 컴퓨터의 %systemdrive%\DVL 디렉터리에 복사해야 합니다. 새 드라이버 확인 로그를 복사하기 전에 테스트 컴퓨터의 디렉터리에 들어 있는 콘텐츠를 삭제해야 합니다.
설명
코드 분석 도구, 정적 드라이버 검증 도구 및 드라이버 확인 로그에 대한 최신 정보는 WDK 릴리스 정보를 참조하세요. 릴리스 정보는 WDK(Windows 드라이버 키트) 다운로드 페이지에서 사용할 수 있습니다.
Important
DVL 파일의 시간 제한, 공간 제한 및 기타 성공하지 못한 결과는 인증 제출에 허용됩니다. 이렇게 하면 HLK의 정적 도구 테스트가 실패하지 않습니다.
Visual Studio 명령 프롬프트 창
Visual Studio와 함께 설치된 Visual Studio 네이티브 도구 명령 프롬프트 또는 EWDK(Enterprise Windows 드라이버 키트)를 통해 Visual Studio 명령 프롬프트 창에서 드라이버 확인 로그를 만들 수도 있습니다.
msbuild.exe <vcxprojectfile> /target:dvl /p:Configuration="Release" /P:Platform=x64
msbuild 또는 Visual Studio 외부에서 드라이버 확인 로그 만들기
Microsoft는 WDK(Windows 드라이버 키트) 및 eWDK(Enterprise WDK)의 일부로 명령줄을 통해 DVL(드라이버 확인 로그)을 생성하는 데 사용할 수 있는 dvl.exe라는 구성 요소를 제공합니다. WDK/eWDK 미리 보기 버전 21342 이상부터 msbuild 또는 Visual Studio 컨텍스트 외부의 명령줄에서 DVL을 생성할 수 있습니다. 아래 단계에 따라 명령줄을 통해 DVL을 만듭니다.
- 모든 vcxproj 파일과 함께 단일 디렉터리에 DVL을 만드는 데 사용해야 하는 결과를 배치합니다. 일반적으로 Windows 클라이언트용으로 인증된 드라이버의 경우 CodeQL SARIF 파일입니다. Windows Server 인증의 경우 코드 분석 및 SDV(정적 드라이버 검증 도구) 결과 파일도 포함될 수 있습니다. 디바이스 드라이버 인증을 위해 실행해야 하는 도구에 대한 특정 세부 정보는 WHCP 요구 사항 문서를 확인하세요.
- CodeQL SARIF 파일 및 코드 분석 XML 파일은 디렉터리의 최상위 수준에 배치해야 합니다. SDV DVL.xml 파일은 "sdv" 하위 폴더에 배치해야 합니다.
- 명령줄에서 CodeQL SARIF 파일이 포함된 최상위 디렉터리로 이동합니다.
- WDK 또는 탑재된 eWDK에서 dvl.exe 찾습니다.
- /manualCreate 플래그, 드라이버 이름 및 원하는 아키텍처를 전달하여 dvl.exe 호출합니다. 예시:
"C:\Program Files (x86)\Windows Kits\10\Tools\dvl\dvl.exe" /manualCreate <driverName> <driverArchitecture>
다음 문자열 중 하나를 driverArchitecture 문자열에 사용해야 합니다.
- X86
- X64
- Arm
- Arm64
driverName 문자열의 일부로 ".sys"을 포함하지 마세요.
- 생성된 DVL을 검사하여 올바르게 생성되었는지 확인합니다.
이 사용은 주로 CodeQL 결과를 사용하여 DVL을 생성하기 위한 것이지만 SDV 및 CA 결과에도 사용할 수 있습니다.
관련 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기