Visiteur  Droits sur la page Lecture seule  

 

Syntaxe des REG

Modifications de la base de registres à partir de REGEDIT et d'un fichier .reg

Il est peut s'avérer utile de modifier la base de registres à l'aide de l'outil REGEDIT utilisé en ligne de commande (et non pas via l'interface graphique), cela essentiellement pour incorporer cette commande dans un fichier batch (.bat ou .cmd sous NT/W2K/XP), ou encore pour l'exécuter depuis un raccourci posé sur le bureau.

Pour cela, il suffit de lui passer en paramètre un fichier ayant l'extension .reg

La syntaxe est la suivante :

REGEDIT [/s] <nom_de_fichier.reg>

Le commutateur facultatif /s permet un fonctionnement en mode silencieux, c'est à dire sans apparition de la boite de dialogue de confirmation (ce mode est nécessaire dans le cas d'utilisation d'un fichier batch) :

Sous Windows 9x/ME/NT4, les fichiers .reg sont des fichiers texte de type ANSI (1 octet par caractère).
Sous Windows 2000 et XP, ils sont, par défaut, de type UNICODE (2 octets par caractère), mais le type ANSI est également supporté. On retiendra ici le type ANSI traditionnel.

La première ligne du fichier est :

Type ANSI REGEDIT4 
Type UNICODE Windows Registry Editor Version 5.00 

Elle est suivie d'une ligne vide, puis des lignes propres à chaque clef à ajouter, modifier ou supprimer.

Ajout / Modification

Pour ajouter ou modifier une clef, on insère le nom complet de la clef, encadré par des crochets : [ et ].

REGEDIT4
[HKEY_CLASSES_ROOT\htmlfile\shell\open\command]

Pour ajouter ou modifier une entrée dans une clef on insère à la suite du nom de la clef une ligne de la forme nom_de_l'entrée>=<valeur_de_l'entrée>

On encadre le nom de l'entrée par des guillemets ” ”, sauf si l'entrée concernée est l'entrée par défaut. Dans ce cas , le nom est symbolisé par le caractère @ (sans guillemets)

REGEDIT4
[HKEY_CLASSES_ROOT\.html]
@="htmlfile"
"Content Type"="text/html"

La valeur d'une entrée peut être de 3 types :

  • REG_SZ (chaîne de caractères)
  • La chaîne doit être encadrée par des guillemets.
  • Le caractère \ est un caractère d'échappement. C'est pourquoi il faut le doubler si on doit l'insérer dans la chaîne (cas fréquent quand la valeur est un nom de fichier). Ce caractère sert aussi à insérer des guillemets dans la chaîne. Ainsi un guillemet sera représenté par la séquence \”
@="\"D:\\Program Files\\Internet Explorer\\iexplore.exe\" -nohome"

REG_DWORD (mot binaire de 4 octets)

La valeur exprimée en hexadécimal doit être précédée du mot-clef dword suivi de 2 points : “InstallDate”=dword:3a020c30

REG_BINARY (donnée binaire de longueur quelconque)

La valeur est exprimée sous la forme d'une suite d'octets exprimés en hexadécimal, séparés par des virgules, le premier étant précédé du mot-clef hex suivi de deux points. Si la ligne est trop grande, on peut la couper à l'aide du caractère \, qui indique que la valeur se continue sur la ligne suivante.

"DigitalProductId"=hex:a4,00,00,00,03,00,00,00,35,32,33,34,30,2d,30,30,35,2d,\
30,30,34,30,31,30,32,2d,30,35,34,30,31,00,0a,00,00,00,41,32,32,2d,30,30,30,\
...
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,43,19,d1,3a

Sous Windows NT/W2K/XP, les valeurs de type REG_EXPAND_SZ (chaîne contenant le nom d'une variable d'environnement) et REG_MULTI_SZ (plusieurs chaînes à la suite) doivent être exprimées sous la forme de valeurs binaires (hex:...)

Suppression d'une clef

Il suffit de faire précéder le nom de la clef à supprimer du signe - (moins)

Suppression de la clef HKEY_LOCAL_MACHINE\SOFTWARE\jcb

REGEDIT4
[-HKEY_LOCAL_MACHINE\SOFTWARE\jcb] 
<code> 

Pour supprimer une entrée, il suffit de faire suivre le signe "=" (après le nom de l'entrée) du signe - (moins) 

Dans la clef HKey_Current_User\Software\Policies\Microsoft\Internet Explorer\Control Panel suppression de l'entrée de nom "Home Page",
(pour information, c'est cette entrée qui interdit de modifier la page d'accueil de I.E.)
<code>
REGEDIT4 
[HKey_Current_User\Software\Policies\Microsoft\Internet Explorer\Control Panel]
"Home Page"=-

Un fichier .reg doit se terminer par une ligne vide.

Export d'un REG

Il est possible également d'exporter un fichier .reg depuis la base de registres à l'aide de REGEDIT en ligne de commande.

La syntaxe est la suivante :

REGEDIT /e <nom_de_fichier.reg> [clef_à_exporter]

nom_de_fichier.reg désigne le nom (chemin complet ou non) du fichier .reg qui sera créé (ou remplacé)

clef_à_exporter désigne la clef (avec toutes les sous-clefs éventuelles) à exporter.

Elle peut être omise. Dans ce cas, c'est l'intégralité de la base de registres qui sera exportée, ce qui peut représenter un processus assez long, et entraîner la création d'un fichier .reg particulièrement volumineux (plusieurs Mo, voire dizaines de Mo)

Exemple : Exportation du contenu de HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet dans le fichier ccs.reg :

regedit /e css.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet

Exemples

ComDlg32Policies

REGEDIT4

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Comdlg32\PlacesBar]
"Place0"=dword:00000011
"Place1"="C:\\"
"Place2"="H:\\"
"Place3"="C:\\Cubes Pilotage"
"Place4"="C:\\Z Tempor"
 
basetech/windowsreg.txt · Dernière modification: 06/11/2005 16:27 (édition externe)
 
Ajouter à Netvibes      

 
Derniers changements Hébergé par www.ebsoft.org Propulsé par DokuWiki