WDK 버전 10.0.26100.1(2024년 5월 22일 릴리스)부터 WDK는 이제 Arm64 컴퓨터에서 드라이버의 개발, 테스트 및 배포를 지원합니다. WDK는 Arm64 하드웨어에서 이전에 지원되는 x86 KMDF/UMDF2 드라이버 에뮬레이션 외에도 Arm64 하드웨어에서 기본적으로 설치 및 실행할 수 있습니다. 또한 Arm64 및 x64 호스트 컴퓨터 모두에서 Arm64 대상 컴퓨터에 드라이버를 디버깅하고 배포할 수 있습니다. Arm64 컴퓨터에 WDK를 설치하는 프로세스는 빌드 도구, 이진 파일 및 라이브러리를 포함하여 필요한 모든 종속성을 자동으로 식별하고 설치합니다.
이 페이지에서는 WDK를 사용하여 Arm64 드라이버를 빌드하는 방법을 설명합니다.
설치
Visual Studio 2022를 다운로드합니다. 최소 버전 17.0.0 이상이 필요합니다. 다음 구성 요소가 설치되어 있는지 확인합니다.
- MSVC v143 - VS 2022 C++ ARM64/ARM64EC Spectre 취약점 완화 라이브러리 (최신 버전)
- MSVC v143 - VS 2022 C++ x64/x86 Spectre 취약점 완화 라이브러리 (최신)
- 최신 v143 빌드 도구(ARM64/ARM64EC)용 Spectre 완화 기능이 있는 C++ ATL
- 최신 v143 빌드 도구용 Spectre 완화 기능이 포함된 C++ ATL (x86 및 x64)
- 최신 v143 빌드 도구와 Spectre 완화 기능이 포함된 ARM64/ARM64EC를 위한 C++ MFC
- 최신 v143 빌드 도구용 C++ MFC(Spectre 취약점 완화 대책 포함, x86 & x64)
- Windows 드라이버 키트
Visual Studio를 설치하고 다시 시작합니다.
Windows SDK를 다운로드합니다. SDK 버전 26100(Windows 11, 버전 24H2) 이상이 있는지 확인합니다.
WDK를 다운로드합니다. WDK 버전 26100 이상이 있는지 확인합니다.
WDK를 사용하여 Arm64 드라이버 빌드
Visual Studio에서 드라이버 솔루션을 엽니다. 사용자 고유의 리포지토리 또는 Windows 드라이버 샘플 리포지토리에서 사용할 수 있습니다.
솔루션 플랫폼을 선택하고 Configuration Manager를 선택합니다.
활성 솔루션 플랫폼에서새로 만들기를 선택합니다.
유형 또는 새 플랫폼 선택에서 Arm64를 선택합니다. Win32에서 설정을 복사합니다. 확인 및 닫기를 선택합니다.
대상 플랫폼으로 Arm64 를 선택하고 다시 빌드합니다.
알려진 문제
통합:
- Windows 11, 버전 24H2 키트 및 Windows 11 버전 22H2 키트가 모두 설치되면 WINDOWS 11로
TargetPlatformVersion설정된 ARM64용 KMDF 드라이버를 빌드하면 해결되지 않은 외부 기호로 인해 버전 22H2가 실패합니다. - Windows 11 버전 22H2 WDK를 사용하여 Visual Studio 2022 버전 17.2.0 및 17.3 내에서 드라이버를 디버깅할 수 없습니다.
- Windows 11, 버전 24H2 키트 및 Windows 11 버전 22H2 키트가 모두 설치되면 WINDOWS 11로
해결 방법:
- 디버깅 문제를 해결하려면 Visual Studio를 버전 17.4.1 이상으로 업데이트합니다.
- Visual Studio 업데이트가 옵션이 아닌 경우 디버깅에 WinDbg를 사용합니다.
- 호환성 문제가 지속되는 경우 이전 버전의 Visual Studio를 사용하는 것이 좋습니다.
EWDK(Enterprise Windows 드라이버 키트) 사용
EWDK 개요:
- EWDK는 필요한 모든 종속성을 포함하며 Visual Studio 설치 없이 드라이버를 빌드하는 데 사용할 수 있습니다.
EWDK를 사용하여 빌드:
다음 명령을 사용하여 드라이버를 빌드합니다.
Msbuild -p:Configuration=Release/Debug; Platform=ARM64
자세한 내용은 EWDK(Enterprise WDK)를 참조하세요.
문제 해결
Visual Studio의 구성:
- Visual Studio에서 Configuration Manager에서 Arm64 플랫폼을 선택하고 Win32에서 설정을 복사하여 Arm64용 드라이버 솔루션을 구성합니다.
테스트 및 디버깅:
- Windows on Arm 디바이스 또는 Windows 11 Arm64 가상 머신에서 드라이버를 테스트하고 디버그합니다.