IoWMISetSingleItem 함수(wdm.h)

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

구문

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

데이터 블록의 instance 이름을 지정합니다. 이 값은 블록의 InstanceName 속성 값에 해당합니다.

[in] DataItemId

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

[in] Version

다음에 사용하도록 예약됩니다. 호출자는 이 매개 변수를 0으로 설정해야 합니다.

[in] ValueBufferSize

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

[in] ValueBuffer

DataItemId 매개 변수로 지정된 속성에 대한 새 값을 포함하는 버퍼에 대한 포인터입니다.

반환 값

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

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

설명

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

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

요구 사항

요구 사항
지원되는 최소 클라이언트 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