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 |