Udostępnij za pośrednictwem


Opisywanie lokalizacji obiektu WMI

Koncepcyjnie podobnie jak w przypadku ujednoliconego lokalizatora zasobów (URL) ścieżka obiektu WMI to ciąg, który jednoznacznie identyfikuje przestrzeń nazw na serwerze, klasę w przestrzeni nazw lub wystąpienia klasy. Ścieżka obiektu jest hierarchiczna i zawiera kilka elementów opisujących lokalizację obiektu. Podobnie jak ścieżki plików, ścieżki obiektów WMI można opisać w całości lub określić jako ścieżkę względną.

Przestrzeń nazw obiektu WMI znajduje się na stronie referencyjnej usługi WMI. Na przykład lokalizacja większości klas obsługiwanych przez dostawców WMI ciMWin32 znajduje się w przestrzeni nazw \root\cimv2. Poniższy kod programu PowerShell opisuje wywołanie pobierania obiektu Win32_ComputerSystem na komputerze lokalnym:

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

Alternatywnie określone wystąpienie Win32_LogicalDisk może mieć następującą ścieżkę z właściwości SWbemObject.Path_.

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

Poniższy przykład przedstawia ścieżkę względną do tego wystąpienia, jak widać, wyświetlając właściwość Relpath obiektu SWbemObjectPath zwróconego przez wywołanie SWbemObject.Path_.

Win32_LogicalDisk.DeviceID="A:"

Należy pamiętać, że DeviceID jest właściwością klucza klasy Win32_LogicalDisk.

C++

W poniższej tabeli wymieniono typy ścieżek obiektów i skojarzone metody, które wymagają ścieżek obiektów.

Typ ścieżki obiektu Metoda
przestrzeni nazw
IWbemServices::OpenNamespace
klas
IWbemServices::ExecMethod
[IWbemServices::ExecMethodAsync](/windows/desktop/api/WbemCli/nf-wbemcli-iwbemservices-execmethodasync)
Klasa lub Instancja
IWbemServices::GetObject
[IWbemServices::GetObjectAsync](/windows/desktop/api/WbemCli/nf-wbemcli-iwbemservices-getobjectasync)
Instancja
IWbemServices::DeleteInstance
[IWbemServices::DeleteInstanceAsync](/windows/desktop/api/WbemCli/nf-wbemcli-iwbemservices-deleteinstanceasync)

 

Skrypt

Ścieżki obiektów można tworzyć na kilka sposobów:

  • Pobierz właściwość metody zwracającej obiekt SWbemObjectPath.
  • Pobierz właściwość SWbemObject.Path_.
  • Utwórz zmienną ciągu zawierającą ścieżkę obiektu.

W poniższej tabeli wymieniono obiekty skryptowe, które wymagają ścieżek obiektów.

Obiekt skryptowy Metoda
SWbemServices
AssociatorsOf
[AssociatorsOfAsync](swbemservices-associatorsofasync.md)
[Usuń](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
pozycja