다음을 통해 공유


HID 컬렉션 찾기 및 열기

이 문서에서는 사용자 모드 애플리케이션 및 커널 모드 드라이버가 최상위 HID 컬렉션을 찾고 여는 방법을 설명합니다.

사용자 모드 애플리케이션

Microsoft Windows는 HIDClass 디바이스를 찾고 식별하기 위한 디바이스 설치 루틴(SetupDiXxx 함수)을 제공합니다. Windows는 HID 컬렉션을 초기화하고 연결하는 다른 Win32 함수를 제공합니다.

사용자 모드 애플리케이션이 로드되면 다음 작업 시퀀스를 수행합니다.

  • HidD_GetHidGuid 호출하여 HIDClass 디바이스에 대한 시스템 정의 GUID를 가져옵니다.

  • SetupDiGetClassDevs를 호출하여 현재 시스템에 설치된 모든 HID 컬렉션에서 지원하는 디바이스 인터페이스를 설명하는 불투명 디바이스 정보 집합에 대한 핸들을 가져옵니다. 애플리케이션은 SetupDiGetClassDevs에 전달되는 Flags 매개 변수에서 DIGCF_PRESENT 및 DIGCF_DEVICEINTERFACE 지정해야 합니다.

  • SetupDiEnumDeviceInterfaces를 반복적으로 호출하여 사용 가능한 모든 인터페이스 정보를 검색합니다.

  • SetupDiGetDeviceInterfaceDetail을 호출하여 각 컬렉션에 대한 인터페이스 정보의 형식을 SP_INTERFACE_DEVICE_DETAIL_DATA 구조로 지정합니다. 이 구조체의 DevicePath 멤버에는 애플리케이션이 WIN32 함수 CreateFile과 함께 사용하여 HID 컬렉션에 대한 파일 핸들을 가져오는 사용자 모드 이름이 포함되어 있습니다.

  • CreateFile을 호출하여 HID 컬렉션에 대한 파일 핸들을 가져옵니다.

커널 모드 드라이버

커널 모드 드라이버가 함수 또는 필터 드라이버인 경우 HID 컬렉션의 디바이스 스택에 디바이스 개체를 연결합니다. 드라이버는 만들기 요청만 사용하여 디바이스를 열어야 합니다.

드라이버가 함수 또는 필터 드라이버가 아닌 경우 일반적으로 플러그 앤 플레이 알림을 사용하여 컬렉션을 찾습니다. 드라이버는 컬렉션을 찾은 후 만들기 요청을 사용하여 컬렉션을 엽니다.