다음을 통해 공유


WdfDeviceAssignInterfaceProperty 함수(wdfdevice.h)

중요하다

UMDF에만 적용됩니다.

WdfDeviceAssignInterfaceProperty 메서드는 디바이스 인터페이스 속성현재 값을 수정합니다.

메모

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

통사론

NTSTATUS WdfDeviceAssignInterfaceProperty(
  [in]           WDFDEVICE                           Device,
  [in]           PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
  [in]           DEVPROPTYPE                         Type,
  [in]           ULONG                               BufferLength,
  [in, optional] PVOID                               PropertyBuffer
);

매개 변수

[in] Device

프레임워크 디바이스 개체에 대한 핸들입니다.

[in] PropertyData

WDF_DEVICE_INTERFACE_PROPERTY_DATA 구조체에 대한 포인터입니다.

[in] Type

PropertyBuffer제공되는 데이터의 형식을 지정하는 DEVPROPTYPE형식화된 값입니다.

[in] BufferLength

PropertyBuffer가 가리키는 버퍼의 길이(바이트)를 지정합니다.

[in, optional] PropertyBuffer

디바이스 인터페이스 속성 데이터에 대한 포인터입니다. 이 매개 변수를 NULL 설정하여 지정된 속성을 삭제합니다.

반환 값

WdfDeviceAssignInterfaceProperty 메서드에 오류가 발생하지 않으면 STATUS_SUCCESS 반환합니다. 추가 반환 값은 다음과 같습니다.

반환 코드 묘사
STATUS_INVALID_PARAMETER 매개 변수 중 하나가 잘못되었습니다.

메서드는 다른NTSTATUS 값을 반환할 수 있습니다.

발언

관련 방법에 대한 자세한 내용은 통합 디바이스 속성 모델 액세스하는참조하세요.

예제

다음 코드 예제에서는 WDF_DEVICE_INTERFACE_PROPERTY_DATA 구조를 초기화한 다음 WdfDeviceAssignInterfaceProperty 호출합니다.

DEFINE_DEVPROPKEY(DEVPKEY_ToasterCrispLevelDword, 0x5d0ba64a, 0x2396, 0x4bc9, 0xbf, 0x49, 0x52, 0x1d, 0xa6, 0x2b, 0x1b, 0xed, 3);  // DEVPROP_TYPE_UINT32

ULONG crispLevel = 0;
WDF_DEVICE_INTERFACE_PROPERTY_DATA propertyData;

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT(
                          &propertyData, 
                          &GUID_DEVINTERFACE_TOASTER_DRIVER
                          &DEVPKEY_ToasterCrispLevelDword
                          );

status = WdfDeviceAssignInterfaceProperty(device, 
                                          &propertData,
                                          DEVPROP_TYPE_UINT32,
                                          sizeof(crispLevel),
                                          &crispLevel);
if (!NT_SUCCESS(status)) {
    return status;
}

요구 사항

요구
지원되는 최소 클라이언트 Windows 8.1
대상 플랫폼 보편적
최소 UMDF 버전 2.0
헤더 wdfdevice.h(Wdf.h 포함)
라이브러리 WUDFx02000.lib
DLL WUDFx02000.dll
IRQL PASSIVE_LEVEL

참고 항목

WDF_DEVICE_INTERFACE_PROPERTY_DATA

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceQueryInterfaceProperty