web-dev-qa-db-fra.com

Exécuter la commande reg en cmd (fichier bat)?

J'essaie d'exécuter ce code d'enregistrement dans cmd (fichier bat), mais je ne pouvais pas le faire fonctionner. Où est-ce que je me trompe?

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

Cela fonctionne si je fais un fichier reg et double-clique.

Code du fichier Bat (cela ne fonctionne pas, pas d'erreurs):

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

Vous obtiendrez probablement une invite UAC lors de l'importation du fichier reg. Si vous acceptez cela, vous avez plus de droits.

Puisque vous écrivez dans la clé 'politiques', vous devez disposer de droits élevés. Cette partie du registre est protégée car elle contient des paramètres gérés par votre administrateur système.

Vous pouvez également essayer d’exécuter regedit.exe à partir de la commande Invite.

regedit.exe /S yourfile.reg

.. devrait importer silencieusement le fichier reg. Voir Syntaxe des options de ligne de commande RegEdit pour plus d'options de ligne de commande.

61
GolezTrol

En ligne de commande, il est préférable d'utiliser l'outil REG plutôt que REGEDIT:

REG IMPORT yourfile.reg

REG est conçu pour le mode console, tandis que REGEDIT est pour le mode graphique. C’est la raison pour laquelle exécuter regedit.exe/S votrefichier.reg est une mauvaise idée, car vous ne être notifié s'il y a une erreur, alors que REG Tool vous demandera:

>  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 /?
48
Noam Manos

Si la mémoire est correctement utilisée, la commande reg add ne créera PAS le chemin d'accès complet au répertoire s'il n'existe pas. Cela signifie que si l'une des clés de registre parent n'existe pas, elle doit être créée manuellement, une par une. C'est vraiment énervant, je sais! Exemple:

@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
8
David Ruhmann

Vous pouvez également simplement créer une préférence de stratégie de groupe et lui demander de créer la clé de registre pour vous. (pas de script impliqué)

0
Joe