SWbemObject.SpawnDerivedClass_ メソッド
現在のオブジェクトから派生クラスのオブジェクトを作成するには、SWbemObject オブジェクトの SpawnDerivedClass_ メソッドを使います。 オブジェクトは、生成されたオブジェクトの親クラスになるクラス定義である必要があります。
この構文の説明については、「スクリプト API のドキュメントの表記規則」を参照してください。
構文
objNewClass = .SpawnDerivedClass_( _
[ ByVal iFlags ] _
)
パラメーター
-
iFlags [省略可能]
-
予約済みで、指定する場合は 0 (ゼロ) にする必要があります。
戻り値
呼び出しが成功した場合、SWbemObject オブジェクトには新しいクラス定義オブジェクトが含まれます。 エラーが発生した場合、オブジェクトは返されません。
エラー コード
SpawnDerivedClass_ メソッドの完了後、Err オブジェクトに次の一覧のいずれかのエラー コードが含まれる場合があります。
-
wbemErrFailed - 2147749889 (0x80041001)
-
未定義のエラーが発生しました。
-
wbemErrIllegalOperation - 2147749918 (0x8004101E)
-
ユーザーが無効な処理 (例: インスタンスからクラスを生成する) を要求しました。
-
wbemErrIncompleteClass - 2147749920 (0x80041020)
-
ソース クラスが完全に定義されていないか、WMI に登録されていないため、新しい派生クラスは許可されません。
-
wbemErrOutOfMemory - 2147749894 (0x80041006)
-
操作を完了させるための十分なメモリがありません。
解説
返されたオブジェクトは、自動的に現在のオブジェクトのサブクラスになります。 この動作はオーバーライドできません。 派生クラスを作成できる他のメソッドはありません。
自分のクライアント プロセスに対してローカルなクラスから派生クラスを作成することはできません。 このメソッドを使って派生クラスを作成する前に、基底クラスを作成する必要があります。 基底クラスを作成するには、SWbemObject.Put_ を呼び出し、SWbemServices.Get を使って基底クラスを取得します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista |
サポートされている最小のサーバー |
Windows Server 2008 |
Header |
|
タイプ ライブラリ |
|
[DLL] |
|
CLSID |
CLSID_SWbemObject |
IID |
IID_ISWbemObject |