다음을 통해 공유


IoWMIOpenBlock 함수(wdm.h)

IoWMIOpenBlock 루틴은 지정된 WMI 클래스에 대한 WMI 데이터 블록 개체를 엽니다.

구문

NTSTATUS IoWMIOpenBlock(
  [in]  LPCGUID Guid,
  [in]  ULONG   DesiredAccess,
  [out] PVOID   *DataBlockObject
);

매개 변수

[in] Guid

WMI 클래스의 GUID를 지정합니다.

[in] DesiredAccess

데이터 블록 개체에 대한 원하는 액세스 권한을 지정합니다. 호출자는 특정 작업을 수행하려면 특정 액세스 권한이 있어야 합니다.

다음은 각 액세스 오른쪽 비트 및 허용되는 작업에 대한 설명입니다.

WMIGUID_EXECUTE

데이터 블록 개체를 사용하여 WMI 클래스 메서드를 실행할 수 있습니다. 이 플래그는 데이터 블록 개체에서 IoWMIExecuteMethod 를 사용하도록 설정해야 합니다.

WMIGUID_NOTIFICATION

데이터 블록 개체를 사용하여 이벤트 알림 콜백을 등록할 수 있습니다. 이 플래그는 IoWMISetNotificationCallback을 사용하도록 설정해야 하며 WMI 이벤트 블록에만 사용할 수 있습니다. 이 플래그를 지정하는 호출자는 SYNCHRONIZE 플래그도 지정해야 합니다.

WMIGUID_QUERY

데이터 블록 개체를 사용하여 WMI 클래스 속성을 쿼리할 수 있습니다. 이 플래그는 데이터 블록 개체에서 IoWMIQueryXxx 루틴을 사용하도록 설정해야 합니다.

WMIGUID_SET

데이터 블록 개체를 사용하여 WMI 클래스 속성을 설정할 수 있습니다. 이 플래그는 데이터 블록 개체에서 IoWMISetXxx 루틴을 사용하도록 설정해야 합니다.

[out] DataBlockObject

루틴이 데이터 블록 개체에 대한 포인터를 반환하는 메모리 위치에 대한 포인터입니다.

반환 값

성공 시 STATUS_SUCCESS 반환하거나 실패 시 적절한 NTSTATUS 오류 코드를 반환합니다.

설명

호출자는 IoWMIOpenBlock 을 사용하여 지정된 WMI 클래스 GUID에 대한 데이터 블록 개체를 만듭니다. 그 후 호출자는 데이터 블록 개체를 사용하여 WMI 클래스 속성을 읽거나 쓰고, WMI 클래스 메서드를 실행하고, WMI 이벤트에 대한 콜백을 등록할 수 있습니다.

IoWMIQueryXxxIoWMISetXxx 루틴을 사용하여 WMI 클래스 속성을 읽고 씁니다. IoWMIExecuteMethod를 사용하여 WMI 클래스 메서드를 실행하고 IoWMISetNotificationCallback을 사용하여 WMI 이벤트 알림 콜백을 등록합니다.

더 이상 필요하지 않은 경우 ObDereferenceObject 를 사용하여 데이터 블록 개체를 닫습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 wdm.h(Ntddk.h, Ntifs.h 포함) WMIGUID_XXX 값은 Wmistr.h에서 선언됩니다. 이를 사용하려면 Wmistr.h를 포함합니다.)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

추가 정보

IoWMIExecuteMethod

IoWMIQueryAllData

IoWMIQueryAllDataMultiple

IoWMIQuerySingleInstance

IoWMIQuerySingleInstanceMultiple

IoWMISetNotificationCallback

IoWMISetSingleInstance

IoWMISetSingleItem

ZwClose