Tareas de WMI: Registro
Tareas de WMI para la creación y modificación de claves y valores del Registro. Para obtener otros ejemplos, consulte TechNet ScriptCenter en https://www.microsoft.com/technet.
Los ejemplos de script que se muestran en este tema solo obtienen datos del equipo local. Para obtener 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 agrega una extensión .txt al archivo.
- Abra una ventana del símbolo del sistema y vaya al directorio donde guardó el archivo.
- Escriba nombredearchivo.vbs de cscript 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 por 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 WMI pueden generar grandes cantidades de salida, es posible que desee redirigir la salida a un archivo. Escriba cscript filename.vbs > outfile.txt en el símbolo del sistema para redirigir la salida del script de filename.vbs a outfile.txt.
En la tabla siguiente se enumeran ejemplos de script que se pueden usar para obtener varios tipos de datos del equipo local.
¿Cómo puedo... | Clases o métodos WMI | ||||||||
---|---|---|---|---|---|---|---|---|---|
... lee los valores de clave del Registro mediante WMI? | Use la clase StdRegProv, ubicada en el espacio de nombres root\default. No puede obtener ninguna instancia de esta clase porque el proveedor de registro del sistema es solo un proveedor de métodos y eventos. Sin embargo, puede obtener datos del Registro a través de métodos como EnumKey o EnumValue. El Win32_Registry, ubicado en el espacio de nombres root\cimv2, obtiene datos sobre el registro como un todo, como el tamaño que tiene.
|
||||||||
... cree una nueva clave del Registro? | Use la claseStdRegProv, ubicada en el espacio de nombres root\default y el métodoCreateKey.
|
||||||||
... cree un nuevo valor del Registro en una clave? | Use la claseStdRegProv, ubicada en el espacio de nombres root\default y el método CreateKey. A continuación, use uno de los métodos Set, en función del tipo de datos del Registro que sea el valor, como el SetDWORDValue. Los métodos Set crean un valor si aún no existe. Para obtener más información, vea Asignación de un tipo de datos del Registro a un tipo de datos WMI.
|
||||||||
... evite obtener un error de clase no válido al intentar escribir un script para leer el registro? | Use el espacio de nombres root\default al obtener acceso a la claseStdRegProv. stdRegProv no forma parte del espacio de nombres cimv2, por lo que se genera un error "Clase no válida" si intenta conectarse a "root\cimv2:StdRegProv".
|
||||||||
... compruebe la seguridad en una clave del Registro específica? | Use la claseStdRegProv, ubicada en el espacio de nombres root\default y el métodocheckAccess. Solo puede comprobar los derechos de acceso del usuario actual que ejecuta el script o la aplicación. No puede comprobar los derechos de acceso de otro usuario especificado. |
||||||||
... leer y escribir valores del Registro binario? | Use la claseStdRegProv, ubicada en el espacio de nombres "Root\Default" y los métodos GetBinaryValue y SetBinaryValue. Los valores del Registro que aparecen en la utilidad RegEdt32 como una serie de valores hexadecimales de bytes están en el formato de datos REG_BINARY. Para obtener más información, vea Asignación de un tipo de datos del Registro a un tipo de datos WMI. En el siguiente ejemplo de código de VBScript se crea una nueva clave con un valor binario. El valor binario se proporciona en el iValues matriz de bytes especificada en Hexadecimal.
El siguiente script lee el valor binario.
|
||||||||
... leer y escribir valores del Registro que contienen varias cadenas? | Use la clase stdRegProv, ubicada en el espacio de nombres root\default y los métodos GetMultiStringValue y SetMultiStringValue. Las claves del Registro que aparecen en la utilidad RegEdt32 como una serie de cadenas separadas por espacios están en el formato de datos REG_MULTI_SZ. Para obtener más información, vea Asignación de un tipo de datos del Registro a un tipo de datos WMI. En el siguiente ejemplo de código de VBScript se crea una nueva clave y un nuevo valor de varias cadena.
El siguiente script lee el valor de varias cadena.
|
||||||||
... ¿quitar una clave del Registro? | Use la claseStdRegProv, ubicada en el espacio de nombres root\default y los métodos de DeleteKey.
|