Freigeben über


CWbemProviderGlue::GetInstanceByPath(LPCWSTR,CInstance**,MethodContext*)-Methode (wbemglue.h)

[Die CWbemProviderGlue-Klasse ist Teil des WMI-Provider-Frameworks, das nun als endgültig betrachtet wird, und werden keine weiteren Entwicklungen, Verbesserungen oder Updates für nicht sicherheitsrelevante Probleme verfügbar sein, die diese Bibliotheken betreffen. Die MI-APIs sollten für alle Neuentwicklungen verwendet werden.]

Die GetInstanceByPath-Methode ruft die durch einen bestimmten Objektpfad identifizierte instance ab, indem die Anbieter-GetObject-Methode aufgerufen wird.

Syntax

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

Parameter

pszObjectPath

Ein Objektpfad zum zurückzugebenden instance.

ppInstance

Ein Zeiger auf einen Zeiger auf eine CInstance-instance verwendet, um die neue instance zu speichern. Der Frameworkanbieter, der die Anforderung ausführt, muss diesen Zeiger freigeben.

pMethodContext

Ein Zeiger auf den aktuellen Kontext. Es muss ein Kontext bereitgestellt werden, um Deadlocks zu verhindern. Verwenden Sie entweder den Kontext, der von Provider::EnumerateInstances oder Provider::ExecQuery an den Anbieter übergeben wird, oder rufen Sie ihn mithilfe von CInstance::GetMethodContext von der instance ab. Dieser Parameter darf nicht NULL sein.

Rückgabewert

Gibt WBEM_S_NO_ERROR zurück, wenn der Vorgang erfolgreich war, WBEM_E_OUT_OF_MEMORY , wenn der Vorgang aufgrund von Arbeitsspeichermangel oder einem anderen HRESULT-Fehlercode fehlgeschlagen ist.

Hinweise

Die GetInstanceByPath-Methode ermöglicht Frameworkanbietern den Zugriff auf Daten eines anderen Anbieters, ohne dass ein WMI-API-Aufruf erforderlich ist. Frameworkanbieter übergeben den Objektpfad einer instance an GetInstanceByPath, wodurch die instance zurückgegeben wird.

In der aktuellen Version des Anbieterframeworks muss pszInstancePath als instance Pfad auf demselben Computer aufgelöst werden.

Obwohl pMethodContext den Standardwert NULL aufweist, muss ein Kontext bereitgestellt werden, um Deadlocks zu verhindern. Verwenden Sie entweder den Kontext, der von Provider::EnumerateInstances oder Provider::ExecQuery an den Anbieter übergeben wird, oder rufen Sie ihn mithilfe von CInstance::GetMethodContext von der instance ab.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile wbemglue.h (einschließlich FwCommon.h)
Bibliothek FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll