경고
UMDF 2는 UMDF의 최신 버전이며 UMDF 1을 대체합니다. 모든 새 UMDF 드라이버는 UMDF 2를 사용하여 작성해야 합니다. UMDF 1에는 새로운 기능이 추가되지 않으며 최신 버전의 Windows 10에서는 UMDF 1에 대한 지원이 제한되어 있습니다. 유니버설 Windows 드라이버는 UMDF 2를 사용해야 합니다.
보관된 UMDF 1 샘플은 Windows 11 버전 22H2 - 2022년 5월 드라이버 샘플 업데이트찾을 수 있습니다.
자세한 내용은 UMDF 시작하기를 참조하세요.
프레임워크 개체 및 인터페이스는 다음과 같은 이유로 COM(구성 요소 개체 모델)을 기반으로 합니다.
COM은 많은 애플리케이션 프로그래머에게 익숙합니다.
C++는 COM 애플리케이션을 프로그래밍하기 위한 기본 설정 언어입니다.
COM 인터페이스를 사용하면 함수를 논리적으로 그룹화할 수 있으므로 DDI(디바이스 드라이버 인터페이스)를 쉽게 이해하고 탐색할 수 있습니다.
COM을 사용하면 기존 드라이버 DLL을 다시 컴파일할 필요 없이 DDI가 확장 및 발전할 수 있습니다.
Microsoft Visual Studio 및 ATL(활성 템플릿 라이브러리)을 비롯한 다양한 도구는 COM 기반 애플리케이션 및 개체를 지원합니다.
프레임워크는 작은 COM 하위 집합만 사용합니다. 전체 COM 인프라 및 런타임 라이브러리에 의존하지 않습니다. 대신 프레임워크는 쿼리 인터페이스 및 참조 계산 기능만 사용합니다. 모든 프레임워크 인터페이스는 IUnknown 에서 파생되므로 기본적으로 QueryInterface, AddRef 및 Release 메서드를 지원합니다. AddRef 및 Release 메서드는 개체 수명을 관리합니다. QueryInterface 메서드를 사용하면 다른 구성 요소가 드라이버에서 지원하는 인터페이스를 확인할 수 있습니다.