CWbemProviderGlue::GetAllInstancesAsynch メソッド (wbemglue.h)
[CWbemProviderGlue クラスは WMI プロバイダー フレームワークの一部であり、現在最終的な状態と見なされています。これらのライブラリに影響を与える、セキュリティ関連以外の問題に対しては、それ以上の開発、機能強化、または更新プログラムは利用できません。 すべての新規開発には、MI API を使用する必要があります。]
GetAllInstancesAsynch メソッドは、特定のクラスによって返されるインスタンスの一覧を取得します。 このメソッドを使用すると、プロバイダーは一度に 1 つのインスタンスを返すことによって非同期的に応答できます。
構文
HRESULT GetAllInstancesAsynch(
LPCWSTR pszClassName,
Provider *pRequester,
LPProviderInstanceCallback pCallback,
LPCWSTR pszNamespace,
MethodContext *pMethodContext,
void *pUserData
);
パラメーター
pszClassName
インスタンスの一覧を返すクラスの名前。
pRequester
pCallback によって指されるコールバック関数の "This" ポインター。
pCallback
このプロトタイプを使用した静的関数へのポインター:
static HRESULT WINAPI Classname::FunctionName(Provider *pProvider,
CInstance *pInstance,
MethodContext *pMethodContext,
void *pUserData );
ここで、Classname は Provider クラスから派生したクラスの名前 です。 これは、pRequester によって定義された "this" ポインターである、このクラスのインスタンスです。 この関数は、 pszClassName で指定されたプロバイダーでサポートされている各インスタンスを返すために呼び出されます。
pszNamespace
pszClassName で指定されたプロバイダーの名前空間。 このパラメーターは、既定の名前空間 (root\cimv2) を示す NULL にすることができます 。
pMethodContext
現在のコンテキストへのポインター。 デッドロックを防ぐためにコンテキストを指定する必要があります。 Provider::EnumerateInstances または Provider::ExecQuery によってプロバイダーに渡されたコンテキストを使用するか、CInstance::GetMethodContext を使用してインスタンスから取得します。 このパラメーターは NULL にすることはできません。
pUserData
pCallback によって指される関数に渡されるユーザー定義データへのポインター。
戻り値
メソッドは、操作が成功した場合は WBEM_S_NO_ERROR を返し、メモリ不足のために操作が失敗した場合は WBEM_E_OUT_OF_MEMORY 、またはその他の HRESULT エラー コードが返されます。
注釈
GetAllInstancesAsynch メソッドは、GetAllInstances とほぼ同じ関数を実行します。 ただし、インスタンスの任意の大きな配列を返す代わりに、プロバイダーは、インスタンスがプロバイダーから取得されるたびに pCallback によって指定された関数にインスタンスを渡します。 これにより、プロバイダーはより少ないメモリを使用でき、インスタンスのクライアントへの返しを早く開始できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista |
サポートされている最小のサーバー | Windows Server 2008 |
対象プラットフォーム | Windows |
ヘッダー | wbemglue.h (FwCommon.h を含む) |
Library | FrameDyn.lib |
[DLL] | FrameDynOS.dll;FrameDyn.dll |