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
へのポインター。 pVal
が null
であるか、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 クラス定義に新しいプロパティを作成し、pVal
が null
であるか、VT_NULL
型の VARIANT
を指している場合にのみ、vtType
パラメーターを使用します。 この場合、vType
パラメーターでプロパティの CIM 型を指定します。 それ以外のすべての場合、vtType
は 0 である必要があります。 基になるオブジェクトがインスタンスである場合は (Val
が null
の場合でも)、プロパティの型は固定され、変更できないため、vtType
も 0 にする必要があります。
例
例については、「IWbemClassObject::Put メソッド」を参照してください。
必要条件
:「システム要件」を参照してください。
ヘッダー: WMINet_Utils.idl
.NET Framework のバージョン: 4.7.2 以降で使用可能
関連項目
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示