이 항목에서는 Visual Studio에서 드라이버 프로젝트에 대한 대상 운영 체제 및 프레임워크 버전을 선택하는 방법을 설명합니다.
드라이버 패키지에 재배포 가능 프레임워크 구성 요소를 포함해야 하는지 확인하려면 재배포 가능 프레임워크 구성 요소 참조하세요.
어떤 프레임워크 버전을 사용해야 하나요?
- Windows XP를 대상으로 하려면 WDF 1.9 이하를 사용합니다.
- Windows Vista, Windows 7 또는 Windows 8을 대상으로 하려면 WDF 1.11 이하를 사용합니다.
- Windows 8.1을 대상으로 하려면 KMDF 1.13 이하 또는 UMDF 1.x 또는 UMDF 2.0을 사용합니다.
- Windows 10 버전 1507을 대상으로 하려면 KMDF 1.15 이전 버전 또는 UMDF 1.x 또는 UMDF 2.15 이하를 사용합니다.
KMDF 및 UMDF 버전에 대한 자세한 내용은 KMDF 버전 기록 및 UMDF 버전 기록참조하세요.
- KMDF 버전 기록
- UMDF 버전 기록
Visual Studio에서 버전을 설정하려면 어떻게 해야 하나요?
최신 버전의 Windows 및 최신 KMDF 또는 UMDF 버전용 드라이버 프로젝트를 빌드하는 경우 기본값을 유지하고 이 단계를 건너뛸 수 있습니다.
그렇지 않으면 다음 단계를 따릅니다.
- 솔루션을 마우스 오른쪽 단추로 클릭하고 Configuration Manager선택합니다. 프로젝트 구성을 원하는 값(예: 디버그)으로 설정합니다.
- 드라이버 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성 선택합니다. 구성 속성->드라이버 설정 ->드라이버 모델엽니다. 드라이버 모델 설정KMDF 버전 부 버전(대상 버전) 또는 UMDF 버전 부 버전(대상 버전) 값을 원하는 값으로 변경합니다. KMDF 버전의 하위 버전(최소 필수) 및 UMDF 버전의 하위 버전(최소 필수)에 대한 자세한 내용은 최소 요구 사항지정을 참조하세요.
Windows 10과 함께 제공되는 WDK(Windows 드라이버 키트)를 사용하여 KMDF 1.9-1.29 드라이버와 UMDF 1.9-2.29 드라이버를 빌드할 수 있습니다.
KMDF 및 UMDF 버전에 대한 자세한 내용은 KMDF 버전 기록 및 UMDF 버전 기록참조하세요.
- KMDF 버전 기록
- UMDF 버전 기록
연결 및 로드
Microsoft Visual Studio에서 WDF(Windows 드라이버 프레임워크) 프로젝트를 빌드할 때 MSBuild는 드라이버를 적절한 프레임워크 라이브러리, 라이브러리의 로더 및 스텁 파일에 연결합니다. 이 모든 것이 WDK에 포함됩니다. 필요한 경우 드라이버 패키지와 함께 배포할 수 있도록 라이브러리 및 로더도 프레임워크의 공동 설치 관리자 포함됩니다.
스텁 파일에는 fxDriverEntry 특수 진입점 루틴이 포함되어 있습니다. MSBuild는 스텁의 FxDriverEntry 루틴을 프레임워크 기반 드라이버의 초기 진입점으로 설정합니다.
운영 체제가 프레임워크 기반 드라이버를 로드하는 경우 스텁 파일과 라이브러리의 로더도 로드합니다. 다음으로, 시스템은 스텁 파일의 FxDriverEntry 루틴을 호출합니다. 그런 다음 이 루틴은 로더를 호출합니다. 로더는 드라이버에 필요한 프레임워크 라이브러리의 버전을 확인한 다음 올바른 버전의 라이브러리 커널 모드 서비스로 로드합니다(아직 로드되지 않은 경우). 마지막으로 라이브러리는 드라이버의 DriverEntry 루틴을 호출합니다.