次の方法で共有


IoWMIExecuteMethod 関数 (wdm.h)

IoWMIExecuteMethod ルーチンは、指定された WMI データ ブロック インスタンスに対して WMI クラス メソッドを実行します。

構文

NTSTATUS IoWMIExecuteMethod(
  [in]      PVOID           DataBlockObject,
  [in]      PUNICODE_STRING InstanceName,
  [in]      ULONG           MethodId,
  [in]      ULONG           InBufferSize,
  [in, out] PULONG          OutBufferSize,
  [in, out] PUCHAR          InOutBuffer
);

パラメーター

[in] DataBlockObject

WMI データ ブロック オブジェクトへのポインター。 呼び出し元は、IoWMIOpenBlockを使用して WMI クラスのデータ ブロック オブジェクトを開きます。 オブジェクトは、WMIGUID_EXECUTEアクセス権で開く必要があります。

[in] InstanceName

データ ブロックのインスタンスの名前を指定します。 この値は、ブロックの InstanceName プロパティの値に対応します。

[in] MethodId

設定するメソッドのメソッド項目 ID を指定します。 このパラメーターの値は、メソッドの WmiMethodId 修飾子で宣言された値に対応します。

[in] InBufferSize

メソッドの入力データのサイズをバイト単位で指定します。 実際の入力データは、InOutBuffer パラメーターが指すバッファーに渡されます。

[in, out] OutBufferSize

メソッドによって出力されるデータの予想されるサイズ (バイト) を指定する ULONG へのポインター。 実際の出力データは、InOutBuffer パラメーターが指すバッファーで返されます。 ルーチンが成功した場合、メモリの場所を更新して、inOutBuffer に実際に格納されているバイト数指定します。 ルーチンがSTATUS_BUFFER_TOO_SMALLで失敗した場合、データを返すために必要なバイト数が返されます。

[in, out] InOutBuffer

呼び出し元が WMI メソッドの入力データを渡し、WMI メソッドの出力データを受け取るバッファーへのポインター。

戻り値

このルーチンは NTSTATUS コードを返します。 可能な戻り値は次のとおりです。

リターン コード 形容
STATUS_SUCCESS
操作は成功しました。 このルーチンは、InOutBuffer パラメーターが指すバッファー内の WMI データを返します。 また、このルーチンは、OutBufferSize パラメーターが指すメモリ位置で返されたデータのサイズをバイト単位で返します。
STATUS_WMI_GUID_NOT_FOUND
WMI クラスを実装するドライバーはありません。
STATUS_WMI_INSTANCE_NOT_FOUND
InstanceName パラメーターで指定された値と等しい InstanceName プロパティを持つ WMI クラスのインスタンスを実装するドライバーはありません。
STATUS_WMI_ITEMID_NOT_FOUND
WMI クラスには、メソッド ID が MethodId の値と等しいメソッド含まれていません。
STATUS_BUFFER_TOO_SMALL
OutBuffer パラメーターで呼び出し元によって渡されるバッファーが小さすぎます。 このルーチンは、InOutBufferSize パラメーターが指すメモリ位置に必要なバッファー サイズを返します。
STATUS_WMI_GUID_DISCONNECTED
WMI GUID は使用できなくなったか、使用できませんでした。

備考

IoWMIExecuteMethod 、指定した WMI クラスとインスタンス名をサポートするドライバーを決定します。 各ドライバーに IRP_MN_EXECUTE_METHOD 要求を発行します。 一致する InstanceName プロパティを持つデータ ブロック インスタンスをエクスポートするドライバーは、指定された WMI メソッドを実行します。

必要条件

要件 価値
サポートされる最小クライアント Windows XP 以降のバージョンの Windows オペレーティング システムで使用できます。
ターゲット プラットフォーム 万国
ヘッダー wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

関連項目

IRP_MN_EXECUTE_METHOD

IoWMIOpenBlock