programacion off lenguaje hacer ejemplos como comandos batch bat avanzados autoejecutable archivos archivo windows batch-file registry cmd

windows - off - lenguaje batch



Ejecutar el comando reg en cmd(archivo bat)? (4)

Estoy tratando de ejecutar este código de registro en cmd (archivo bat), pero no pude hacerlo funcionar. ¿Dónde estoy haciendo mal?

[HKEY_CURRENT_USER/Software/Policies/Microsoft/Internet Explorer/Control Panel] "HomePage"=dword:00000001

Funciona si lo hago un archivo reg y hago doble clic.

Código de archivo Bat (esto no funciona, no hay errores):

@echo off reg add "HKCU/Software/Policies/Microsoft/Internet Explorer/Control Panel" /V HomePage /T REG_DWORD /F /D 1


En la línea de comandos, es mejor usar la herramienta REG en lugar de REGEDIT:

REG IMPORT yourfile.reg

REG está diseñado para el modo consola, mientras que REGEDIT es para modo gráfico. Esta es la razón por la que ejecutar regedit.exe / S yourfile.reg es una mala idea, ya que no se le notificará si hay un error , mientras que la herramienta REG le preguntará:

> REG IMPORT missing_file.reg ERROR: Error opening the file. There may be a disk or file system error. > %windir%/System32/reg.exe /? REG Operation [Parameter List] Operation [ QUERY | ADD | DELETE | COPY | SAVE | LOAD | UNLOAD | RESTORE | COMPARE | EXPORT | IMPORT | FLAGS ] Return Code: (Except for REG COMPARE) 0 - Successful 1 - Failed For help on a specific operation type: REG Operation /? Examples: REG QUERY /? REG ADD /? REG DELETE /? REG COPY /? REG SAVE /? REG RESTORE /? REG LOAD /? REG UNLOAD /? REG COMPARE /? REG EXPORT /? REG IMPORT /? REG FLAGS /?


Probablemente recibirá un mensaje UAC al importar el archivo reg. Si acepta eso, tiene más derechos.

Como está escribiendo en la tecla ''políticas'', necesita tener derechos elevados. Esta parte del registro está protegida, ya que contiene configuraciones administradas por el administrador del sistema.

De forma alternativa, puede intentar ejecutar regedit.exe desde el símbolo del sistema.

regedit.exe /S yourfile.reg

.. debe importar silenciosamente el archivo reg. Consulte la sintaxis de las opciones de línea de comandos de RegEdit para obtener más opciones de línea de comando.


Si la memoria funciona correctamente, el comando reg add NO creará la ruta completa del directorio si no existe. Lo que significa que si alguna de las claves de registro principales no existe, entonces deben crearse manualmente una a una. Es realmente molesto, lo sé! Ejemplo:

@echo off reg add "HKCU/Software/Policies" reg add "HKCU/Software/Policies/Microsoft" reg add "HKCU/Software/Policies/Microsoft/Internet Explorer" reg add "HKCU/Software/Policies/Microsoft/Internet Explorer/Control Panel" reg add "HKCU/Software/Policies/Microsoft/Internet Explorer/Control Panel" /v HomePage /t REG_DWORD /d 1 /f pause


También puede crear una preferencia de directiva de grupo y hacer que cree la clave de registro para usted. (sin secuencias de comandos involucradas)