SWbemServices.AssociatorsOfAsync メソッド
SWbemServices オブジェクトの AssociatorsOfAsync メソッドでは、指定したオブジェクトに関連付けられているエンドポイントと呼ばれるオブジェクト (クラスまたはインスタンス) のコレクションを返します。 AssociatorsOfAsync への呼び出しはすぐに返され、結果と状態は、objWbemSink で指定されたシンクに配信されるイベントを介して呼び出し元に返されます。 返されたオブジェクトを処理するには、objWbemSink.OnObjectReady イベント ハンドラーを作成します。
すべてのオブジェクトが到着した後に、objWbemSink.OnCompleted イベントで処理が行われます。 このメソッドは、WQL クエリ ASSOCIATORS OF が実行するのと同じ関数を実行します。 シンクの作成について詳しくは、「WMI イベントの受信」を参照してください。
このメソッドは、非同期モードで呼び出されます。 詳細については、「メソッドの呼び出し」を参照してください。
この構文の説明については、「スクリプト API のドキュメント規則」を参照してください。
構文
SWbemServices.AssociatorsOfAsync( _
ByVal objWbemSink, _
ByVal strObjectPath, _
[ ByVal strAssocClass ], _
[ ByVal strResultClass ], _
[ ByVal strResultRole ], _
[ ByVal strRole ], _
[ ByVal bClassesOnly ], _
[ ByVal bSchemaOnly ], _
[ ByVal strRequiredAssocQualifier ], _
[ ByVal strRequiredQualifier ], _
[ ByVal iFlags ], _
[ ByVal objWbemNamedValueSet ], _
[ ByVal objWbemAsyncContext ] _
)
パラメーター
-
objWbemSink
-
必須。 オブジェクトを非同期的に受信するオブジェクト シンク。 オブジェクトを受信する SWbemSink オブジェクトを作成します。
-
strObjectPath
-
必須。 ソース クラスまたはインスタンスのオブジェクト パスを含む文字列。 詳細については、「WMI オブジェクトの場所の説明」を参照してください。
-
strAssocClass [省略可能]
-
関連付けクラスを含む文字列。 指定すると、このパラメーターは、返されるエンドポイントが、指定された関連付けクラスまたはこの関連付けクラスから派生したクラスを介してソースに関連付けられている必要があることを示します。
-
strResultClass [省略可能]
-
クラス名を含む文字列。 指定した場合、この任意のパラメーターは、返されるエンドポイントがこのパラメーターで指定されたクラスに属しているか、そのクラスから派生していなければならないことを示します。
-
strResultRole [省略可能]
-
プロパティ名を含む文字列。 指定した場合、このパラメーターは、返されるエンドポイントが、ソース オブジェクトとの関連付けで特定の役割を担う必要があることを示します。 役割は、関連付けの指定されたプロパティ (参照プロパティである必要があります) の名前によって定義されます。
-
strRole [省略可能]
-
プロパティ名を含む文字列。 指定した場合、このパラメーターは、返されるエンドポイントがソース オブジェクトとの関連付け (この中ではソース オブジェクトが特定の役割を担っている) に参加している必要があることを示します。 役割は、関連付けの指定されたプロパティ (参照プロパティである必要があります) の名前によって定義されます。
-
bClassesOnly [省略可能]
-
クラスの実際のインスタンスではなく、クラス名のリストを返す必要があるかを示すブール値。 これらは、エンドポイント インスタンスが属するクラスです。 このパラメーターの既定値は、FALSE です。
-
bSchemaOnly [省略可能]
-
クエリがデータではなく、スキーマに適用されるのかを示すブール値。 このパラメーターの既定値は、FALSE です。 TRUE に設定できるのは、strObjectPath パラメーターによってクラスのオブジェクト パスが指定されている場合のみです。 TRUE に設定すると、返されるエンドポイントのセットは、スキーマ内のソース クラスに適切に関連付けられているクラスを表します。
-
strRequiredAssocQualifier [省略可能]
-
修飾子名を含む文字列。 指定した場合、このパラメーターは、返されるエンドポイントが、指定した修飾子を含む関連付けクラスを介してソース オブジェクトに関連付けられている必要があることを示します。
-
strRequiredQualifier [省略可能]
-
修飾子名を含む文字列。 指定した場合、このパラメーターは、返されるエンドポイントは指定された修飾子を含まなければならないことを示します。
-
iFlags [省略可能]
-
操作に追加のフラグを指定する整数。 このパラメーターの既定値は、wbemFlagDontSendStatus です。 このパラメーターには次の値を指定することができます。
-
wbemFlagSendStatus (128 (0x80))
-
非同期呼び出しで、オブジェクト シンクの OnProgress イベント ハンドラーに状態更新を送信します。
-
wbemFlagDontSendStatus (0 (0x0))
-
非同期呼び出しからオブジェクト シンクの OnProgress イベント ハンドラーに状態の更新が送信されないようにします。
-
wbemFlagUseAmendedQualifiers (131072 (0x20000))
-
WMI で基底クラス定義と一緒にクラス変更データを返すようにします。 修正修飾子の詳細については、「WMI クラス情報のローカライズ」を参照してください。
objWbemNamedValueSet [省略可能]
通常、これは未定義です。 そうでない場合、これは SWbemNamedValueSet オブジェクトであり、その要素は、要求を処理しているプロバイダーが使用できるコンテキスト情報を表します。 このような情報をサポートする、または必要とするプロバイダーは、認識された値名、値のデータ型、許可された値、セマンティクスを文書化する必要があります。
objWbemAsyncContext [オプション]
SWbemNamedValueSet オブジェクトであり、元の非同期呼び出しのソースを識別するためにオブジェクト シンクに返されます。 同じオブジェクト シンクを使用して複数の非同期呼び出しを実行している場合は、このパラメーターを使用します。 このパラメータを使用するには、SWbemNamedValueSet オブジェクトを作成し、SWbemNamedValueSet.Add メソッドを使用して、実行する非同期呼び出しを識別する値を追加します。 この SWbemNamedValueSet オブジェクトはオブジェクト シンクに返され、呼び出しのソースは SWbemNamedValueSet.Item メソッドを使用して抽出できます。 詳細については、「メソッドの呼び出し」を参照してください。
戻り値
このメソッドは値を返しません。 成功した場合、シンクはインスタンスごとに OnObjectReady イベントを受け取ります。 最後のインスタンスの後、オブジェクト シンクは OnCompleted イベントを受け取ります。
エラー コード
AssociatorsOfAsync メソッドの完了後に、Err オブジェクトに次のリストのいずれかのエラー コードが含まれる場合があります。
-
wbemErrAccessDenied - 2147749891 (0x80041003)
-
現在のユーザーには、呼び出しによって返された 1 つ以上のクラスを表示する権限がありません。
-
wbemErrFailed - 2147749889 (0x80041001)
-
未定義のエラーが発生しました。
-
wbemErrInvalidParameter - 2147749896 (0x80041008)
-
無効なパラメーターが指定されました。
-
wbemErrOutOfMemory - 2147749894 (0x80041006)
-
操作を完了させるための十分なメモリがありません。
-
wbemErrNotFound - 2147749890 (0x80041002)
-
要求された項目が見つかりませんでした。
解説
この呼び出しはすぐに返されます。 要求されたオブジェクトと状態は、objWbemSink で指定されたシンクに配信されるコールバックを通じて呼び出し元に返されます。 オブジェクトが返されたら、それぞれを都度処理するには、objWbemSink.OnObjectReady イベント サブルーチンを作成します。 すべてのオブジェクトが返されたら、objWbemSink.OnCompleted イベントの実装で最終的な処理を実行できます。
非同期コールバックを使用すると、認証されていないユーザーがシンクにデータを提供できます。 これにより、スクリプトとアプリケーションにセキュリティ リスクが発生します。 リスクを排除するには、「非同期呼び出しでのセキュリティの設定」を参照してください。
objWbemAsyncContext パラメーターをスクリプトで使用して、呼び出しのソースを確認します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista |
サポートされている最小のサーバー |
Windows Server 2008 |
Header |
|
タイプ ライブラリ |
|
[DLL] |
|
CLSID |
CLSID_SWbemServices |
IID |
IID_ISWbemServices |