Put 関数

名前付きプロパティが新しい値に設定されます。

Note

この API は、内部でだけ使用します。 開発者コードで使用するためのものではありません。

構文

HRESULT Put (
   [in] int               vFunc,
   [in] IWbemClassObject* ptr,
   [in] LPCWSTR           wszName,
   [in] LONG              lFlags,
   [in] VARIANT*          pVal,
   [in] CIMTYPE           vtType
);

パラメーター

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

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

wszName
[in] プロパティの名前。 このパラメーターを null とすることはできません。

lFlags
[in] 予約されています。 このパラメーターは、0 にする必要があります。

pVal
[in] 新しいプロパティ値になる有効な VARIANT へのポインター。 pValnull であるか、VT_NULL 型の VARIANT を指している場合、プロパティは null に設定されます。

vtType
[in] pVal が指している VARIANT の型。 詳細については、「解説」セクションを参照してください。

戻り値

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

定数 説明
WBEM_E_FAILED 0x80041001 一般エラーが発生しました。
WBEM_E_INVALID_PARAMETER 0x80041008 1 つ以上のパラメーターが無効です。
WBEM_E_INVALID_PROPERTY_TYPE 0x8004102a プロパティ型が認識されません。 この値は、クラスが既に存在する場合に、クラスのインスタンスを作成すると返されます。
WBEM_E_OUT_OF_MEMORY 0x80041006 メモリ不足のため、操作を完了できません。
WBEM_E_TYPE_MISMATCH 0x80041005 インスタンスの場合: pVal がプロパティに対して正しくない型の VARIANT を指していることを示します。
クラス定義の場合: プロパティは既に親クラスに存在し、新しい COM 型が古い COM 型と異なります。
WBEM_S_NO_ERROR 0 関数呼び出しは成功しました。

解説

この関数では、IWbemClassObject::Put メソッドの呼び出しがラップされます。

この関数は、常に、現在のプロパティ値を新しい値で上書きします。 IWbemClassObject がクラス定義を指している場合は、Put によりプロパティの値が作成または更新されます。 IWbemClassObject が CIM インスタンスを指している場合は、Put によりプロパティの値の更新のみが行われます。Put でプロパティの値を作成することはできません。

__CLASS システム プロパティは、クラスの作成時に、空白のままにできない場合にのみ書き込み可能です。 その他のシステム プロパティはすべて読み取り専用です。

ユーザーは、アンダースコア ("_") で開始または終了する名前を持つプロパティを作成することはできません。 これは、システム クラスおよびプロパティ用に予約されています。

Put 関数によって設定されるプロパティが親クラスに存在する場合、プロパティの型が親クラスの型と一致していない場合を除き、プロパティの既定値が変更されます。 プロパティが存在せず、型が一致しない場合は、プロパティが作成されます。

CIM クラス定義に新しいプロパティを作成し、pValnull であるか、VT_NULL 型の VARIANT を指している場合にのみ、vtType パラメーターを使用します。 この場合、vType パラメーターでプロパティの CIM 型を指定します。 それ以外のすべての場合、vtType は 0 である必要があります。 基になるオブジェクトがインスタンスである場合は (Valnull の場合でも)、プロパティの型は固定され、変更できないため、vtType も 0 にする必要があります。

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

必要条件

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

ヘッダー: WMINet_Utils.idl

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

関連項目