다음을 통해 공유


IoWMISetSingleItem 함수(wdm.h)

IoWMISetSingleItem 루틴은 데이터 블록 인스턴스에서 지정된 WMI 클래스 및 인스턴스 이름과 일치하는 단일 속성을 설정합니다.

통사론

NTSTATUS IoWMISetSingleItem(
  [in] PVOID           DataBlockObject,
  [in] PUNICODE_STRING InstanceName,
  [in] ULONG           DataItemId,
  [in] ULONG           Version,
  [in] ULONG           ValueBufferSize,
  [in] PVOID           ValueBuffer
);

매개 변수

[in] DataBlockObject

WMI 데이터 블록 개체에 대한 포인터입니다. 호출자는 IoWMIOpenBlock 루틴을 사용하여 WMI 클래스에 대한 데이터 블록 개체를 엽니다. WMIGUID_SET 액세스 권한으로 개체를 열어야 합니다.

[in] InstanceName

데이터 블록 인스턴스의 이름을 지정합니다. 이 값은 블록에 대한 InstanceName 속성의 값에 해당합니다.

[in] DataItemId

설정할 속성의 데이터 항목 ID를 지정합니다. 이 매개 변수의 값은 속성의 WmiDataId 한정자에서 선언된 값에 해당합니다.

[in] Version

나중에 사용할 수 있습니다. 호출자는 이 매개 변수를 0으로 설정해야 합니다.

[in] ValueBufferSize

ValueBuffer 매개 변수에 전달된 버퍼의 크기(바이트)를 지정합니다.

[in] ValueBuffer

DataItemId 매개 변수로 지정된 속성의 새 값이 들어 있는 버퍼에 대한 포인터입니다.

반환 값

루틴은 NTSTATUS 코드를 반환합니다. 가능한 반환 값은 다음과 같습니다.

반환 코드 묘사
STATUS_SUCCESS
작업이 성공했습니다. WMI 데이터 블록 인스턴스 내의 속성 값은 ValueBuffer 매개 변수가 가리키는 버퍼의 내용으로 업데이트됩니다.
STATUS_WMI_GUID_NOT_FOUND
WMI 클래스를 구현하는 드라이버는 없습니다.
STATUS_WMI_INSTANCE_NOT_FOUND
InstanceName 속성이 InstanceName 매개 변수에 지정된 값과 같은 WMI 데이터 블록의 인스턴스를 구현하는 드라이버는 없습니다.
STATUS_WMI_ITEMID_NOT_FOUND
WMI 클래스에는 데이터 항목 ID가 DataItemId값과 같은 속성이 없습니다.
STATUS_WMI_READ_ONLY
데이터 블록의 데이터 항목 ID는 읽기 전용입니다.
STATUS_WMI_SET_FAILURE
WMI 데이터 블록 인스턴스를 구현하는 드라이버는 DataItemId지정된 속성을 업데이트할 수 없습니다.

발언

IoWMISetSingleItem 지정된 WMI 클래스 및 인스턴스 이름을 지원할 수 있는 드라이버를 결정합니다. 이러한 각 드라이버에 IRP_MN_CHANGE_SINGLE_ITEM 요청을 발급합니다. InstanceName 속성과 일치하는 데이터 블록 인스턴스를 내보내는 드라이버는 데이터 블록 인스턴스에서 지정된 속성을 업데이트합니다.

드라이버는 IoWMISetSingleInstance 사용하여 WMI 클래스 인스턴스의 모든 속성을 동시에 업데이트할 수도 있습니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows XP 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 보편적
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

참고 항목

IRP_MN_CHANGE_SINGLE_ITEM

IoWMIOpenBlock

IoWMIQuerySingleInstance

IoWMISetSingleInstance