次の方法で共有


PutMethod 関数

メソッドを作成します。

この API は内部でのみ使用されます。 開発者コードから使用するためのものではありません。

構文

HRESULT PutMethod (
   [in] int                vFunc,
   [in] IWbemClassObject*  ptr,
   [in] LPCWSTR            wszName,
   [in] LONG               lFlags,
   [in] IWbemClassObject*  pInSignature,
   [in] IWbemClassObject*  pOutSignature
);

パラメーター

vFunc [in]このパラメーターは使用されません。

ptr [in] IWbemClassObject インスタンスへのポインター。

wszName [in]作成するメソッドの名前。

lFlags [in]引っ込み思案。 このパラメーターは 0 にする必要があります。

pSignatureIn[in]メソッドのin パラメーターを含む__Parameters システム クラスのコピーへのポインター。 このパラメーターは、 nullに設定されている場合は無視されます。

pSignatureOut[in]メソッドのout パラメーターを含む__Parameters システム クラスのコピーへのポインター。 このパラメーターは、 nullに設定されている場合は無視されます。

戻り値

この関数によって返される次の値は WbemCli.h ヘッダー ファイルで定義されます。または、コード内で定数として定義できます。

定数 価値 Description
WBEM_E_INVALID_PARAMETER 0x80041008 1 つ以上のパラメーターが無効です。
WBEM_E_INVALID_DUPLICATE_PARAMETER 0x80041043 pInSignature オブジェクトと pOutSignature オブジェクトの両方で指定された [in, out] メソッド パラメーターには、異なる修飾子があります。
WBEM_E_MISSING_PARAMETER_ID 0x80041036 メソッド パラメーターに、 ID 修飾子の指定がありません。
WBEM_E_NONCONSECUTIVE_PARAMETER_IDS 0x80041038 メソッド パラメーターに割り当てられている ID 系列が連続していないか、0 から始まらない。
WBEM_E_PARAMETER_ID_ON_RETVAL 0x80041039 メソッドの戻り値には、 ID 修飾子があります。
WBEM_E_PROPAGATED_METHOD 0x80041034 親クラスの既存のメソッド名を再利用しようとしましたが、シグネチャが一致しませんでした。
WBEM_S_NO_ERROR 0 関数呼び出しが成功しました。

注釈

この関数は、 IWbemClassObject::P utMethod メソッドの呼び出しをラップします。

このメソッド呼び出しは、 ptr が CIM クラス定義である場合にのみサポートされます。 CIM インスタンスを指す IWbemClassObject ポインターからメソッド操作を使用することはできません。

ユーザーは、アンダースコアで始まるか終わる名前のメソッドを作成できません。 これは、システム クラスとプロパティ用に予約されています。

メソッドの場合、 in パラメーターと out パラメーターは 、IWbemClassObject オブジェクトのプロパティとして記述されます。

[in/out] パラメーターは、pInSignatureパラメーターとpOutSignature パラメーターが指す両方のオブジェクトに同じプロパティを追加することで定義できます。 この場合、プロパティは同じ ID 修飾子値を共有します。

ReturnValue以外の__Parameters クラス オブジェクト内の各プロパティには、パラメーターが表示される順序を識別する 0 から始まる数値のID修飾子が必要です。 同じ ID 値を持つパラメーターは 2 つなく、 ID 値はスキップできません。 いずれかの条件が発生した場合、 PutMethod 関数は WBEM_E_NONCONSECUTIVE_PARAMETER_IDSを返します。

Example

例については、 IWbemClassObject::P utMethod メソッドを参照してください。

Requirements

:システム要件」を参照してください。

ヘッダ: WMINet_Utils.idl

.NET Framework のバージョン: 4.7.2 以降で利用可能

こちらも参照ください