Objekt „SWbemObjectPath“

Verwenden Sie die Methoden und Eigenschaften des Objekts SWbemObjectPath zum Erstellen und Überprüfen eines Objektpfads. Dieses Objekt kann durch den VBScript-Aufruf CreateObject erstellt werden.

Member

Das Objekt SWbemObjectPath hat die folgenden Membertypen:

Methoden

Das Objekt SWbemObjectPath hat die folgenden Methoden.

Methode BESCHREIBUNG
SetAsClass Erzwingt, dass der Pfad eine WMI-Klasse adressiert.
SetAsSingleton Erzwingt, dass der Pfad eine Singleton-WMI-Instanz adressiert.

Eigenschaften

Das Objekt SWbemObjectPath hat die folgenden Eigenschaften.

Eigenschaft Zugriffstyp BESCHREIBUNG
Authority
Lesen/Schreiben
Eine Zeichenfolge, die die „Authority“-Komponente des Objektpfads definiert.
Klasse
Lesen/Schreiben
Der Name der Klasse, die Teil des Objektpfads ist.
DisplayName
Lesen/Schreiben
Eine Zeichenfolge, die den Pfad in einer Form enthält, die als Monikeranzeigename verwendet werden kann. Weitere Informationen finden Sie unter Erstellen einer WMI-Anwendung oder eines WMI-Skripts.
IsClass
Schreibgeschützt
Ein boolescher Wert, der angibt, ob dieser Pfad eine Klasse darstellt. Dies entspricht der Eigenschaft __Genus in der COM-API.
IsSingleton
Schreibgeschützt
Ein boolescher Wert, der angibt, ob dieser Pfad eine Singleton-Instanz darstellt.
Schlüssel
Schreibgeschützt
Ein SWbemNamedValueSet-Objekt mit den Schlüsselwertbindungen.
Gebietsschema
Lesen/Schreiben
Eine Zeichenfolge mit dem Gebietsschema für diesen Objektpfad.
Namespace
Lesen/Schreiben
Der Name des Namespaces, der Teil des Objektpfads ist. Dies entspricht der Systemeigenschaft __Namespace in der COM-API.
ParentNamespace
Schreibgeschützt
Der Name des übergeordneten Namespaces, der Teil des Objektpfads ist.
Pfad
Lesen/Schreiben
Enthält den absoluten Pfad. Dies entspricht der Systemeigenschaft __Path in der COM-API. Dies ist die Standardeigenschaft dieses Objekts.
Relpath
Lesen/Schreiben
Enthält den relativen Pfad. Dies entspricht der Systemeigenschaft __Relpath in der COM-API.
Security_
Schreibgeschützt
Wird zum Lesen oder Ändern der Sicherheitseinstellungen verwendet.
Server
Lesen/Schreiben
Name des Servers. Dies entspricht der Systemeigenschaft __Server in der COM-API.

Beispiele

Im folgenden VBScript-Codebeispiel wird gezeigt, wie Objektpfade erstellt werden.

on error resume next 
Set ObjectPath = CreateObject("WbemScripting.SWbemObjectPath")
ObjectPath.Server = "dingle"
ObjectPath.Namespace = "root/default/something"
ObjectPath.Class = "ho"
ObjectPath.Keys.Add "fred1", 10
ObjectPath.Keys.Add "fred2", -34
ObjectPath.Keys.Add "fred3", 65234654
ObjectPath.Keys.Add "fred4", "Wahaay"
ObjectPath.Keys.Add "fred5", -786186777

if err <> 0 then 
 WScript.Echo err.number
end if 

WScript.Echo "Pass 1:"
WScript.Echo ObjectPath.Path
WScript.Echo ObjectPath.DisplayName
WScript.Echo ""

ObjectPath.Security_.ImpersonationLevel = 3

WScript.Echo "Pass 2:"
WScript.Echo ObjectPath.Path
WScript.Echo ObjectPath.DisplayName
WScript.Echo ""

ObjectPath.Security_.AuthenticationLevel = 5

WScript.Echo "Pass 3:"
WScript.Echo ObjectPath.Path
WScript.Echo ObjectPath.DisplayName
WScript.Echo ""

Set Privileges = ObjectPath.Security_.Privileges
if err <> 0 then
 WScript.Echo Hex(Err.Number), Err.Description
end if
Privileges.Add 8
Privileges.Add 20, false

WScript.Echo "Pass 4:"
WScript.Echo ObjectPath.Path
WScript.Echo ObjectPath.DisplayName
WScript.Echo ""

ObjectPath.DisplayName = "winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktprivacy,(Debug,!IncreaseQuota, CreatePagefile ) }!//fred/root/blah"

WScript.Echo "Pass 5:"
WScript.Echo ObjectPath.Path
WScript.Echo ObjectPath.DisplayName
WScript.Echo ""

Im folgenden Perl-Codebeispiel wird gezeigt, wie Objektpfade erstellt werden.

use strict;
use Win32::OLE;
use constant FALSE=>"false";

my ( $ObjectPath, $Privileges );

eval { $ObjectPath = new Win32::OLE 'WbemScripting.SWbemObjectPath'; };
unless($@)
{
 eval
 {
  $ObjectPath->{Server} = "dingle";
  $ObjectPath->{Namespace} = "root/default/something";
  $ObjectPath->{Class} = "ho";
  $ObjectPath->{Keys}->Add("fred1", 10);
  $ObjectPath->{Keys}->Add("fred2", -34);
  $ObjectPath->{Keys}->Add("fred3", 65234654);
  $ObjectPath->{Keys}->Add("fred4", "Wahaay");
  $ObjectPath->{Keys}->Add("fred5", -786186777);
 };
 unless($@)
 {
  print "\n";
  print "Pass 1:\n";
  print $ObjectPath->{Path}, "\n";
  print $ObjectPath->{DisplayName} , "\n\n";

  $ObjectPath->{Security_}->{ImpersonationLevel} = 3 ;

  print "Pass 2:\n";
  print $ObjectPath->{Path}, "\n";
  print $ObjectPath->{DisplayName} , "\n\n";

  $ObjectPath->{Security_}->{AuthenticationLevel} = 5 ;

  print "Pass 3:\n";
  print $ObjectPath->{Path}, "\n";
  print $ObjectPath->{DisplayName} , "\n\n";

  eval { $Privileges = $ObjectPath->{Security_}->{Privileges}; };
  unless($@)
  {
   $Privileges->Add(8);
   $Privileges->Add(20,FALSE);

   print "Pass 4:\n";
   print $ObjectPath->{Path}, "\n";
   print $ObjectPath->{DisplayName} , "\n\n";

   $ObjectPath->{DisplayName} = "winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktprivacy,(Debug,!IncreaseQuota, CreatePagefile ) }!//fred/root/blah";

   print "Pass 5:\n";
   print $ObjectPath->{Path}, "\n";
   print $ObjectPath->{DisplayName} , "\n";
  }
  else
  {
   print STDERR Win32::OLE->LastError, "\n";
  }
 }
 else
 {
  print STDERR Win32::OLE->LastError, "\n";
 }
}
else
{
 print STDERR Win32::OLE->LastError, "\n";
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista
Unterstützte Mindestversion (Server)
Windows Server 2008
Header
Wbemdisp.h
Typbibliothek
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemObjectPath
IID
IID_ISWbemObjectPath

Weitere Informationen

Objekte für die Skripterstellungs-API