새 장치 기능 드라이버 만들기

이 항목에서는 Visual Studio를 사용하여 새 장치 기능 드라이버 작성을 시작하는 방법에 대해 설명합니다. 장치 기능 드라이버는 다른 항목에서 다루는 필터 드라이버, 소프트웨어 드라이버 및 파일 시스템 드라이버와는 다릅니다. 장치 기능 드라이버 및 장치 기능 드라이버가 다른 종류의 드라이버와 어떻게 다른지에 대한 자세한 내용은 드라이버란 무엇입니까?, 드라이버 모델 선택장치 노드 및 장치 스택을 참조하세요.

시작하려면 먼저 자신의 장치가 장치 및 드라이버 기술에 설명되어 있는 기술 목록에서 어디에 해당되는지 확인합니다. 장치에 사용할 수 있는 드라이버 모델에 대한 자세한 내용은 해당하는 특정 기술의 설명서를 참조하세요. 권장되는 드라이버 모델은 기술마다 다릅니다. 어떤 기술의 설명서에서는 UMDF(사용자 모드 드라이버 프레임워크) 또는 KMDF(커널 모드 드라이버 프레임워크)를 사용할 것을 권장하고, 또 어떤 기술의 설명서에서는 드라이버 쌍의 일부인 미니 드라이버를 만드는 방법에 대해 설명합니다. 미니 드라이버는 미니 포트 및 미니 클래스를 비롯하여 다양한 이름을 따릅니다.

지금부터는 다음 중 자신의 드라이버 모델 권장 사항을 설명하는 사례를 확인하고 단계를 따릅니다.

사례 1: 기술 설명서에서 UMDF를 권장하는 경우

  1. Visual Studio의 파일 메뉴에서 새로 만들기 | 프로젝트를 선택합니다.
  2. 새 프로젝트 대화 상자의 왼쪽 창에서 Visual C++ | Windows 드라이버 | WDF를 찾아 선택합니다.
  3. 가운데 창에서 **사용자 모드 드라이버(UMDF)**를 선택합니다.
  4. 이름위치 상자에 해당 정보를 입력하고 확인을 클릭합니다. 자세한 내용은 템플릿 기반 UMDF 드라이버 작성을 참조하세요.참고  새 UMDF 드라이버를 만들 경우 32자 이하의 드라이버 이름을 선택해야 합니다. 길이 제한은 wdfglobals.h에서 정의됩니다.  
  5. 이로써 대부분의 UMDF 드라이버에 필요한 일반 코드를 구현하는 드라이버 프로젝트가 만들어졌습니다. 이제 자신의 장치에 맞는 코드를 제공할 수 있습니다. 구현해야 할 인터페이스에 대한 자세한 내용은 기술 설명서를 참조하세요.

사례 2: 기술 설명서에서 KMDF를 권장하는 경우

  1. Visual Studio의 파일 메뉴에서 새로 만들기 | 프로젝트를 선택합니다.
  2. 새 프로젝트 대화 상자의 왼쪽 창에서 WDF를 찾아 선택합니다.
  3. 가운데 창에서 **KMDF(커널 모드 드라이버)**를 선택합니다.
  4. 이름위치 상자에 해당 정보를 입력하고 확인을 클릭합니다. 자세한 내용은 템플릿 기반 KMDF 드라이버 작성을 참조하세요. 참고  새 KMDF 드라이버를 만들 경우 32자 이하의 드라이버 이름을 선택해야 합니다. 길이 제한은 wdfglobals.h에서 정의됩니다.  
  5. 이로써 대부분의 KMDF 드라이버에 필요한 일반 코드를 구현하는 드라이버 프로젝트가 만들어졌습니다. 이제 자신의 장치에 맞는 코드를 제공할 수 있습니다. 구현해야 할 메서드에 대한 자세한 내용은 기술 설명서를 참조하세요.

사례 3: 기술 설명서에서 미니 드라이버 모델을 설명하는 경우

장치 기술에 미니 포트, 미니 클래스 또는 다른 종류의 미니 드라이버 모델이 있는 경우 Visual Studio에 해당 모델에 대한 특정 템플릿이 있는지 확인합니다.

  1. Visual Studio의 파일 메뉴에서 새로 만들기 | 프로젝트를 선택합니다.
  2. 새 프로젝트 대화 상자의 왼쪽 창에서 템플릿 | Visual C++ | Windows 드라이버를 찾아 선택합니다.
  3. 설치된 템플릿 목록을 탐색하여 작성해야 할 미니 드라이버 종류에 대한 템플릿을 찾습니다.
  4. Windows 드라이버 아래에 자신의 미니 드라이버 종류에 해당하는 템플릿이 없으면 온라인을 클릭하고 온라인에서 사용 가능한 템플릿을 찾아봅니다.
  5. 미니 드라이버 종류에 맞는 템플릿이 있으면 그 템플릿을 선택하고 이름위치 상자에 해당 정보를 입력한 다음 확인을 클릭합니다.
  6. 이로써 미니 드라이버에 필요한 일반 코드를 구현하는 드라이버 프로젝트가 만들어졌습니다. 이제 자신의 장치에 맞는 코드를 제공할 수 있습니다. 구현해야 할 기능에 대한 자세한 내용은 기술 설명서를 참조하세요.

자신의 장치 기술에 미니 드라이버 모델이 있고 이 미니 드라이버 종류에 대한 특정 템플릿을 찾을 수 없는 경우 대부분 WDM(Windows 드라이버 모델) 템플릿을 사용하게 됩니다. 자세한 내용은 해당 기술 설명서를 참조하세요. KMDF를 사용하여 미니 드라이버를 작성하는 경우도 드물게 있기는 하지만 일반적인 시작점은 WDM입니다.

  1. Visual Studio의 파일 메뉴에서 새로 만들기 | 프로젝트를 선택합니다.

  2. Visual Studio의 새 프로젝트 대화 상자에 있는 Windows 드라이버에서 WDM을 선택합니다.

  3. 이름위치 상자에 해당 정보를 입력하고 확인을 클릭합니다.

  4. 이제 빈 WDM 드라이버 프로젝트가 만들어졌습니다. 솔루션 탐색기 창에서 드라이버 프로젝트를 마우스 오른쪽 단추로 클릭하고 추가 | 새 항목을 선택합니다.

  5. 새 항목 추가 대화 상자에서 **C++ 파일(.cpp)**을 선택하고 파일의 이름을 입력한 다음 확인을 클릭합니다.

    참고  .cpp 파일 대신 .c 파일을 만들려면 .c 확장명을 가진 이름을 입력합니다.

     

  6. 구현해야 할 기능에 대한 자세한 내용은 기술 설명서를 참조하세요. 기능을 구현하고 구성할 때 .cpp 또는 .c 파일을 추가할 수 있습니다.