Las tareas de WMI para la administración del escritorio pueden ejercer el control y obtener datos de un escritorio remoto o un equipo local. Por ejemplo, puede determinar si el protector de pantalla de un equipo local requiere una contraseña. WMI también ofrece la capacidad de apagar un equipo remoto. Para conocer otros ejemplos, vea TechNet ScriptCenter en https://www.microsoft.com/technet.
Los ejemplos de script que se muestran en este tema obtienen datos solo del equipo local. Para más información sobre cómo usar el script para obtener datos de equipos remotos, consulte Conexión a WMI en un equipo remoto.
En el procedimiento siguiente se describe cómo ejecutar un script.
Para ejecutar un script
Copie el código y guárdelo en un archivo con una extensión.vbs, como filename.vbs. Asegúrese de que el editor de texto no agregue una extensión.txt al archivo.
Abra un símbolo del sistema y navegue hasta el directorio donde haya almacenado el archivo.
Escriba cscript filename.vbs en el símbolo del sistema.
Si no puede acceder a un registro de eventos, compruebe si se ejecuta desde un símbolo del sistema con privilegios elevados. Algunos registros de eventos, como el registro de eventos de seguridad, pueden estar protegidos mediante controles de acceso de usuario (UAC).
Nota
De forma predeterminada, cscript muestra la salida de un script en la ventana del símbolo del sistema. Dado que los scripts de WMI pueden generar un número elevado de salidas, es posible que le interese redirigir la salida a un archivo. Escriba cscript filename.vbs > outfile.txt en el símbolo del sistema para redirigir la salida del script filename.vbs a outfile.txt.
La tabla siguiente contiene ejemplos de script que se pueden usar para obtener varios tipos de datos del equipo local.
Cómo...
Clases o métodos WMI
... determinar si un equipo remoto se ha arrancado en el modo seguro con estado de Redes de Azure.
Use la clase Win32_ComputerSystem y compruebe el valor de la propiedad PrimaryOwnerName.
VB
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery ("Select * from Win32_ComputerSystem")
For Each objComputer in colSettings
Wscript.Echo "System Name: " & objComputer.Name
Wscript.Echo "Registered owner: " & objComputer.PrimaryOwnerName
Next
... determinar si un protector de pantalla del equipo requiere una contraseña.
Use la clase Win32_Desktop y compruebe el valor de la propiedad ScreenSaverSecure.
VB
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Desktop")
For Each objItem in colItems
Wscript.Echo "Screen Saver Secure: " & objItem.ScreenSaverSecure
Next
strComputer = "atl-dc-01"
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate,(Shutdown)}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystems
ObjOperatingSystem.Shutdown(1)
Next