次の方法で共有


CWbemProviderGlue::GetInstanceByPath(LPCWSTR,CInstance**,MethodContext*) メソッド (wbemglue.h)

[CWbemProviderGlue クラスは WMI プロバイダー フレームワークの一部であり、現在最終的な状態と見なされています。これらのライブラリに影響を与える、セキュリティ関連以外の問題に対しては、それ以上の開発、機能強化、または更新プログラムは利用できません。 すべての新規開発には、MI API を使用する必要があります。]

GetInstanceByPath メソッドは、プロバイダーの GetObject メソッドを呼び出して、特定のオブジェクト パスによって識別されるインスタンスを取得します。

構文

HRESULT GetInstanceByPath(
  LPCWSTR       pszObjectPath,
  CInstance     **ppInstance,
  MethodContext *pMethodContext
);

パラメーター

pszObjectPath

返されるインスタンスへのオブジェクト パス。

ppInstance

新しいインスタンスの格納に使用される CInstance インスタンスへのポインターへのポインター。 要求を実行するフレームワーク プロバイダーは、このポインターを解放する必要があります。

pMethodContext

現在のコンテキストへのポインター。 デッドロックを防ぐためにコンテキストを指定する必要があります。 Provider::EnumerateInstances または Provider::ExecQuery によってプロバイダーに渡されたコンテキストを使用するか、CInstance::GetMethodContext を使用してインスタンスから取得します。 このパラメーターは NULL にすることはできません。

戻り値

操作が成功した場合は WBEM_S_NO_ERROR を返し、メモリ不足のため操作が失敗した場合は WBEM_E_OUT_OF_MEMORY 、またはその他の HRESULT エラー コードを返します。

解説

GetInstanceByPath メソッドを使用すると、フレームワーク プロバイダーは WMI API 呼び出しを必要とせずに別のプロバイダーからデータにアクセスできます。 フレームワーク プロバイダーは、インスタンスのオブジェクト パスを GetInstanceByPath に渡し、インスタンスを返します。

プロバイダー フレームワークの現在のバージョンでは、 pszInstancePath は同じコンピューター上のインスタンス パスに解決する必要があります。

pMethodContext の既定値は NULL ですが、デッドロックを防ぐためにコンテキストを指定する必要があります。 Provider::EnumerateInstances または Provider::ExecQuery によってプロバイダーに渡されたコンテキストを使用するか、CInstance::GetMethodContext を使用してインスタンスから取得します。

要件

   
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー wbemglue.h (FwCommon.h を含む)
Library FrameDyn.lib
[DLL] FrameDynOS.dll;FrameDyn.dll