통합 디바이스 속성 모델 액세스

이 항목에서는 WDF(Windows Driver Frameworks) 드라이버가 통합 디바이스 속성 모델을 통해 노출되는 속성을 검색하거나 수정하는 방법을 설명합니다. 나열된 메서드는 User-Mode Driver Framework(UMDF) 버전 2.0 및 KMDF(Kernel-Mode Driver Framework) 버전 1.13부터 사용할 수 있습니다.

KMDF 및 UMDF 드라이버 모두 다음 메서드를 호출할 수 있습니다.

KMDF와 UMDF 드라이버 모두 WdfDeviceCreate를 호출하기 전에 다음 메서드를 호출할 수 있습니다. WdfDeviceCreate를 호출하는 방법에 대한 자세한 내용은 프레임워크 디바이스 개체 만들기를 참조하세요.

WdfDeviceCreate를 호출한 후 드라이버는 해당 WdfDeviceXxx속성 메서드를 호출하여 디바이스 속성 정보를 가져올 수 있습니다.

위의 -Ex 메서드는 DEVICE_REGISTRY_PROPERTY 사용하여 지정할 수 있는 하위 집합 대신 WDF_DEVICE_PROPERTY_DATA 구조를 사용하여 속성을 지정할 수 있다는 점에서 Ex 이외의 메서드와 다릅니다.

디바이스 속성 데이터를 수신하기 전에 드라이버는 일반적으로 WdfXxxQueryProperty 를 호출하여 필요한 버퍼 크기를 가져옵니다. 일부 속성의 경우 필요한 크기가 반환되는 시기와 드라이버가 WdfXxxQueryProperty 를 다시 호출하는 경우 간에 데이터 크기가 변경됩니다. 따라서 드라이버는 반환 상태 STATUS_BUFFER_TOO_SMALL 않을 때까지 실행되는 루프 내에서 WdfXxxQueryProperty를 호출해야 합니다.

필요한 버퍼 크기를 알고 변경되지 않는 경우에만 WdfXxxQueryProperty 를 사용하는 것이 가장 좋습니다. 이 경우 드라이버는 WdfXxxQueryProperty 를 한 번만 호출해야 하기 때문입니다. 필요한 버퍼 크기를 알 수 없거나 다른 경우 드라이버는 WdfXxxAllocAndQueryProperty를 호출해야 합니다.

디바이스 인터페이스 속성 액세스

UMDF 드라이버는 다음 메서드를 사용하여 통합 속성 모델을 통해 노출되는 디바이스 인터페이스 속성을 검색하거나 수정할 수 있습니다.

디바이스 인터페이스 속성을 검색하거나 수정하려면 KMDF 드라이버가 IoGetDeviceInterfacePropertyData 또는 IoSetDeviceInterfacePropertyData 를 직접 호출해야 합니다.