Escribir valores en el registro en todas las ramas de los perfiles de usuario
Si queremos realizar modificaciones en el registro, dentro del perfil de cada uno de los usuarios existentes en el equipo, e incluso modificar el perfil por defecto para que esos valores estén presentes en los perfiles de los usuarios que en el futuro inicien sesión, tenemos que obrar del siguiente modo:
en un archivo con extensión .cmd se escribe el código que pongo más abajo, lógicamente adaptado a las necesidades y se tienesque ejecutar como administrador, por ejemplo con el comando psexec de las pstools, lanzándolo con la siguiente línea:
psexec -i -s c:\ruta\archivo.cmd
El archivo.cmd tiene que tener el siguiente contenido o similar, con tantas líneas como sea necesario:
for /f "tokens=1,2* delims=\" %%i in (' reg query HKU ') do reg add HKU\%%j\Prueba /f
for /f "tokens=1,2* delims=\" %%i in (' reg query HKU ') do reg add HKU\%%j\Prueba /v ejemplo /t REG_DWORD /d 100 /f
La primera de las líneas recorre todas las claves existentes bajo HKEY_USERS, poniendo en la variable %%j el nombre de la clave de cada usuario y creando bajo ella una nueva subclave "Prueba"
La segunda línea hace el mismo recorrido, y crea dentro de la subclave Prueba un nuevo valor DWORD de nombre "ejemplo" y lo rellena con el dato "100"
El parámetro /f es para que no pregunte si ya existe
El comando psexec se puede descargar del siguiente enlace, y se copia a la carpeta windows o a una que esté en el path, o bien, si no se quiere que esté en los equipos de los usuarios, se puede colocar en una carpeta compartida en la red.
http://technet.microsoft.com/es-es/sysinternals/bb897553.aspx
He hecho pruebas con estas líneas y me ha funcionado creando en cada rama de usuario la carpeta y el valor correspondientes. No obstante, aconsejo que todas las pruebas se hagan con una máquina de pruebas que se pueda reinstalar sin problemas en caso de fallo. El comando REG te permite retocar muchas cosas en el registro, y con el psexec -s lo ejecutas con todos los permisos del mundo, así que hay que asegurarse de que hace justo lo que quieres antes de lanzarlo a todos los equipos de tu dominio.
Para ejecutarlo en todos los equipos puedes asignarlo como login script, y hacer primero que se copie a la carpeta windows de cada equipo el psexec con:
copy "\\servidor\recurso\psexec.exe" "%systemroot%\"
Comentarios recientes