次の方法で共有


SWbemServices.ReferencesToAsync メソッド

SWbemServices オブジェクトの ReferencesToAsync メソッドは、特定のソース クラスまたはインスタンスを参照するすべての関連付けクラスまたはインスタンスのコレクションを返します。 このメソッドを使用すると、REFERENCES OF WQL クエリによって実行されるのと同じ関数が実行されます。

非同期モードの詳細については、メソッドの呼び出しに関するページを参照してください。

この構文の説明については、「スクリプト API のドキュメント規則」を参照してください。

構文

SWbemServices.ReferencesToAsync( _
  ByVal ObjWbemSink, _
  ByVal strObjectPath, _
  [ ByVal strResultClass ], _
  [ ByVal strRole ], _
  [ ByVal bClassesOnly ], _
  [ ByVal bSchemaOnly ], _
  [ ByVal strRequiredQualifier ], _
  [ ByVal iFlags ], _
  [ ByVal objWbemNamedValueSet ], _
  [ ByVal objWbemAsyncContext ] _
)

パラメーター

ObjWbemSink

必須。 オブジェクトを非同期的に受信するオブジェクト シンク。 オブジェクトを受信する SWbemSink オブジェクトを作成します。

strObjectPath

必須。 このメソッドのソースのオブジェクト パスを含む文字列。 詳細については、「WMI クラス情報のローカライズ」を参照してください。

strResultClass [省略可能]

クラス名を含む文字列。 指定した場合、このパラメーターは、返される関連付けオブジェクトがこのパラメーターで指定されたクラスに属しているか、そのクラスから派生していなければならないことを示します。

strRole [省略可能]

プロパティ名を含む文字列。 指定した場合、このパラメーターは、返される関連付けオブジェクトが、ソース オブジェクトが特定の役割を果たすオブジェクトに制限されていなければならないことを示します。 その役割は、関連付けの、指定された参照プロパティの名前によって定義されます。

bClassesOnly [省略可能]

クラスの実際のインスタンスではなく、クラス名の一覧を返す必要があるかどうかを示すブール値。 これらは、関連付けオブジェクトが属しているクラスです。 このパラメーターの既定値は、FALSE です。

bSchemaOnly [省略可能]

クエリがデータではなくスキーマに適用されるのかどうかを示すブール値。 このパラメーターの既定値は、FALSE です。 TRUE に設定できるのは、strObjectPath パラメーターによってクラスのオブジェクト パスが指定されている場合のみです。 TRUE に設定されると、返される一連のエンドポイントは、スキーマ内のソース クラスに関連付けられているクラスを表します。

strRequiredQualifier [省略可能]

修飾子名を含む文字列。 指定した場合、このパラメーターは、返される関連付けオブジェクトに、指定された修飾子が含まれていなければならないことを示します。

iFlags [省略可能]

操作に追加のフラグを指定する整数。 このパラメーターの既定値は、wbemFlagBidirectional です。 このパラメーターには次の値を指定できます。

wbemFlagSendStatus (128 (0x80))

非同期呼び出しで、オブジェクト シンクの OnProgress イベント ハンドラーに状態更新を送信します。

wbemFlagDontSendStatus (0 (0x0))

非同期呼び出しからオブジェクト シンクの OnProgress イベント ハンドラーに状態の更新が送信されないようにします。

wbemFlagUseAmendedQualifiers (131072 (0x20000))

Windows Management Instrumentation (WMI) がクラス変更データと基底クラス定義を返すようにします。 詳細については、「WMI クラス情報のローカライズ」を参照してください。

objWbemNamedValueSet [オプション]

通常、これは未定義です。 それ以外の場合、これは、要求を処理しているプロバイダーで使用可能なコンテキスト情報を表す要素を持つ SWbemNamedValueSet オブジェクトです。 コンテキスト情報をサポートまたは必要とするプロバイダーを使用して、認識された値名、値のデータ型、許可された値、セマンティクスを文書化する必要があります。

objWbemAsyncContext [省略可能]

これは、元の非同期呼び出しのソースを識別するためにオブジェクト シンクに戻る SWbemNamedValueSet オブジェクトです。 同じオブジェクト シンクを使用して複数の非同期呼び出しを行うには、このパラメーターを使用します。 このパラメーターを使用するには、SWbemNamedValueSet オブジェクトを作成し、SWbemNamedValueSet.Add メソッドを使用して、実行している非同期呼び出しを識別する値を追加します。 この SWbemNamedValueSet オブジェクトはオブジェクト シンクに返され、呼び出しのソースは SWbemNamedValueSet.Item メソッドを使用して抽出できます。 詳細については、「メソッドの呼び出し」を参照してください。

戻り値

このメソッドは値を返しません。 成功した場合、シンクはインスタンスごとに OnObjectReady イベントを受け取ります。 最後のインスタンスの後、オブジェクト シンクは OnCompleted イベントを受け取ります。

エラー コード

ReferencesToAsync メソッドが完了すると、Err オブジェクトに次の一覧のいずれかのエラー コードが含まれる場合があります。

注意

要素を含まないコレクションが返されても、エラーではありません。

wbemErrAccessDenied - 2147749891 (0x80041003)

現在のユーザーには、呼び出しによって返された 1 つ以上のクラスを表示する権限がありません。

wbemErrFailed - 2147749889 (0x80041001)

未定義のエラーが発生しました。

wbemErrInvalidParameter - 2147749896 (0x80041008)

無効なパラメーターが指定されました。

wbemErrOutOfMemory - 2147749894 (0x80041006)

操作を完了させるための十分なメモリがありません。

解説

この呼び出しはすぐに返されます。 要求されたオブジェクトと状態は、objWbemSink で指定されたシンクに配信されるコールバックを通じて呼び出し元に返されます。 オブジェクトが返されたら、それぞれを都度処理するには、objWbemSink.OnObjectReady イベント サブルーチンを作成します。 すべてのオブジェクトが返されたら、objWbemSink.OnCompleted イベントの実装で最終的な処理を実行できます。

非同期コールバックを使用すると、認証されていないユーザーがシンクにデータを提供できます。 これにより、スクリプトとアプリケーションにセキュリティ リスクが発生します。 リスクを排除するには、「非同期呼び出しでのセキュリティの設定」を参照してください。

要件

要件
サポートされている最小のクライアント
Windows Vista
サポートされている最小のサーバー
Windows Server 2008
Header
Wbemdisp.h
タイプ ライブラリ
Wbemdisp.tlb
[DLL]
Wbemdisp.dll
CLSID
CLSID_SWbemServices
IID
IID_ISWbemServices

関連項目

SWbemServices

SWbemObject.Associators_

SWbemObject.References_

SWbemServices.AssociatorsOf