Beschreiben des Speicherorts eines WMI-Objekts

Ein WMI-Objektpfad, der konzeptionell einem Uniform Resource Locator (URL) ähnelt, ist eine Zeichenfolge, die den Namespace auf einem Server, eine Klasse innerhalb eines Namespaces oder Instanzen einer Klasse eindeutig identifiziert. Ein Objektpfad ist hierarchisch und enthält mehrere Elemente, die den Speicherort des betreffenden Objekts beschreiben. Wie Dateipfade können WMI-Objektpfade vollständig beschrieben oder als relativer Pfad angegeben werden.

Der Namespace eines WMI-Objekts wird auf der WMI-Referenzseite aufgeführt. Beispielsweise befindet sich der Speicherort der meisten von den CIMWin32-WMI-Anbietern unterstützten Klassen im Namespace \root\cimv2. Der folgende PowerShell-Code beschreibt einen Aufruf zum Abrufen des Win32_ComputerSystem-Objekts auf dem lokalen Computer:

Get-WmiObject -Class Win32_ComputerSystem -Namespace "root\cimv2" -ComputerName "."

Alternativ kann eine bestimmte Instanz von Win32_LogicalDisk den folgenden Pfad aus der SWbemObject.Path_-Eigenschaft aufweisen.

\\Machine1\root\cimv2:Win32_LogicalDisk.DeviceID="C:"

Das folgende Beispiel zeigt den relativen Pfad zu dieser Instanz, wie anhand der Eigenschaft Relpath des SWbemObjectPath-Objekts angezeigt wird, das vom Aufruf von SWbemObject.Path_ zurückgegeben wird.

Win32_LogicalDisk.DeviceID="A:"

Beachten Sie, dass DeviceID die Schlüsseleigenschaft der Win32_LogicalDisk-Klasse ist.

C++

In der folgenden Tabelle sind Objektpfadtypen und die zugehörigen Methoden aufgeführt, für die Objektpfade erforderlich sind.

Objektpfadtyp Methode
Namespace
IWbemServices::OpenNamespace
Klasse
IWbemServices::ExecMethod
[IWbemServices::ExecMethodAsync](/windows/desktop/api/WbemCli/nf-wbemcli-iwbemservices-execmethodasync)
Klasse oder Instanz
IWbemServices::GetObject
[IWbemServices::GetObjectAsync](/windows/desktop/api/WbemCli/nf-wbemcli-iwbemservices-getobjectasync)
Instanz
IWbemServices::DeleteInstance
[IWbemServices::DeleteInstanceAsync](/windows/desktop/api/WbemCli/nf-wbemcli-iwbemservices-deleteinstanceasync)

 

Skript

Objektpfade können auf verschiedene Arten erstellt werden:

  • Rufen Sie die Eigenschaft einer Methode ab, die ein SWbemObjectPath-Objekt zurückgibt.
  • Rufen Sie die Eigenschaft SWbemObject.Path_ ab.
  • Erstellen Sie eine Zeichenfolgenvariable, die den Objektpfad enthält.

In der folgenden Tabelle sind die Skripting-Objekte aufgeführt, für die Objektpfade erforderlich sind.

Skripting-Objekte Methode
SWbemServices
AssociatorsOf
[AssociatorsOfAsync](swbemservices-associatorsofasync.md)
[Delete] (swbemservices-delete.md)
[DeleteAsync](swbemservices-deleteasync.md)
[ExecMethod](swbemservices-execmethod.md)
[ExecMethodAsync](swbemservices-execmethodasync.md)
[Get](swbemservices-get.md)
[GetAsync](swbemservices-getasync.md)
[ReferencesTo](swbemservices-referencesto.md)
[ReferencesToAsync](swbemservices-referencestoasync.md)
SWbemObjectSet
Element