Share via


Objeto SWbemObjectPath

Utilice los métodos y propiedades del objeto SWbemObjectPath para construir y validar una ruta de acceso del objeto. La llamada CreateObject de VBScript puede crear este objeto.

Miembros

El objeto SWbemObjectPath contiene estos tipos de miembros:

Métodos

El objeto SWbemObjectPath tiene estos métodos.

Método Descripción
SetAsClass Fuerza la ruta de acceso para abordar una clase WMI.
SetAsSingleton Fuerza la ruta de acceso para abordar una instancia de WMI Singleton.

Propiedades

El objeto SWbemObjectPath tiene estas propiedades.

Propiedad Tipo de acceso Descripción
Autoridad
Lectura/escritura
Cadena que define el componente Authority de la ruta de acceso del objeto.
Clase
Lectura/escritura
Nombre de la clase que forma parte de la ruta de acceso del objeto.
DisplayName
Lectura/escritura
Cadena que contiene la ruta de acceso de un formulario que se puede usar como nombre para mostrar de moniker. Consulte Creación de una aplicación WMI o un script.
IsClass
Solo lectura
Valor booleano que indica si esta ruta de acceso representa una clase. Esto es análogo a la propiedad __Genus de la API COM.
IsSingleton
Solo lectura
Valor booleano que indica si esta ruta de acceso representa una instancia singleton.
Claves
Solo lectura
Objeto SWbemNamedValueSet que contiene los enlaces de valor de clave.
Configuración regional
Lectura/escritura
Cadena que contiene la configuración regional de esta ruta de acceso del objeto.
Espacio de nombres
Lectura/escritura
Nombre del espacio de nombres que forma parte de la ruta de acceso del objeto. Esto es lo mismo que la propiedad __Namespace en la API COM.
ParentNamespace
Solo lectura
Nombre del elemento principal del espacio de nombres que forma parte de la ruta de acceso del objeto.
Ruta de acceso
Lectura/escritura
Contiene la ruta de acceso absoluta. Esto es lo mismo que la propiedad del sistema __Path en la API COM. Esta es la propiedad predeterminada de este objeto.
Relpath
Lectura/escritura
Contiene la ruta de acceso relativa. Esto es lo mismo que la propiedad del sistema __Relpath en la API COM.
Security_
Solo lectura
Se usa para leer o cambiar la configuración de seguridad.
Servidor
Lectura/escritura
Nombre del servidor. Esto es lo mismo que la propiedad del sistema __Server en la API COM.

Ejemplos

En el ejemplo de código de VBScript siguiente se muestra cómo crear rutas de acceso del objeto.

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 ""

En el ejemplo de código Perl siguiente se muestra cómo crear rutas de acceso del objeto.

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";
}

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Encabezado
Wbemdisp.h
Biblioteca de tipos
Wbemdisp.tlb
Archivo DLL
Wbemdisp.dll
CLSID
CLSID_SWbemObjectPath
IID
IID_ISWbemObjectPath

Consulte también

Objetos de API de scripting