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 |
|
Typbibliothek |
|
DLL |
|
CLSID |
CLSID_SWbemObjectPath |
IID |
IID_ISWbemObjectPath |