Dernière mise
à jour : 01/04/2006
Créer une disquette
ou un Cd-Rom "bootable" permettant d'éditer le
Registre Windows
1) Rendez-vous à cette adresse : http://home.eunet.no/~pnordahl/ntpasswd/
2) Cliquez sur le bouton Bootdisk.
3) Si vous souhaitez créer une disquette téléchargez
un fichier nommé bd050303.zip.
Si votre ordinateur ne possède pas de lecteur de disquette
téléchargez un fichier image nommé cd050303.zip.
4) Décompressez l'archive ZIP que vous aurez téléchargée.
Afin de créer le fichier image double-cliquez simplement
sur un fichier portant l'extension .iso. Votre logiciel de gravure
va automatiquement se lancer.
Dans le cas de la disquette, décompressez le fichier .zip
suivez cette procédure :
1) Cliquez sur Démarrer/Exécuter puis saisissez
cette commande : cmd
2) Servez-vous de la commande Cd afin de vous rendre dans le répertoire
où vous avez extrait les fichiers.
3) Saisissez cette commande : install
4) À la question Enter target diskette drive:, saisissez
: a:
5) Appuyez deux fois sur la touche Entrée.
La procédure de création de la disquette va automatiquement
démarrer.
6) Une fois cette dernière finalisée, appuyez sur
n'importe quelle touche afin de revenir au "prompt".
7) Insérez la disquette dans l'ordinateur cible puis redémarrez
complètement.
N'oubliez pas de modifiez éventuellement la séquence
de démarrage du Bios de votre ordinateur afin que ce dernier
démarre sur le support que vous aurez choisit.
Nous allons maintenant éditer le Registre Windows.
1) Saisissez le numéro de la partition visée.
2) Appuyez sur la touche Entrée afin de confirmer l'emplacement
des fichiers de ruche [WINDOWS/system32/config].
3) Saisissez le nom de la ruche système que vous souhaitez
modifier : SAM, SECURITY, default, software, system, systemprofile,
userdiff.
Dans notre cas, la ruche concernée s'appelle "Software".
4) Saisissez le chiffre 9 (Registry editor, now with full write
support!).
Vous serez alors sur ce prompt : [1020] >.
Il y a maintenant deux problèmes : vous êtes en clavier
Qwerty et donc un effort de traduction simultanée est nécessaire.
Le respect de la casse est obligatoire sinon les arborescences
du Registre ne sont pas trouvées. Les commandes principales
sont les suivantes :
hive [<n>] : énumère les ruches ou bascule
vers la ruche portant le numéro "n"
cd <Clé> : change de clé.
ls : liste les sous-clés.
nk <Nom_Clé> : ajoute une clé.
dk <Nom_Clé> : permet de supprimer une clé
vide.
ed <Nom_Valeur> : édite une valeur.
nv <Type_Valeur> <Nom_Valeur> : ajoute une valeur
suivant cette notation :
1 : valeur chaîne
3 : valeur binaire
4 : valeur DWORD
dv <Nom_Valeur> : supprime une valeur.
delallv : supprime toutes les valeurs de la clé courante.
q : quitte le menu.
Il existe également une façon d'éditer les
valeurs hexadécimales présentes mais signalons tout
de suite que cela nécessite une parfaite connaissance au
préalable de la structure des données de la valeur
présente et donc nous nous étendrons pas sur le
sujet.
Imaginons tout d'abord un exemple simple nous permettant de modifier
les données d'une entrée nommée TaskbarSizeMove
présente dans cette arborescence du registre : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced.
1) Saisissez ces commandes :
software
9
ls
cd Mi
Vous serez dans l'arborescence HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft.
Il existe donc une forme de complétion de commandes (toujours
à partir du moment que vous respecter la casse).
2) Continuer l'exploration du Registre en saisissant :
cd Wi
cd Cu
cd Ex
cd Ad
Vous voilà maintenant dans l'arborescence : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced.
3) Si vous souhaitez modifier les données contenues dans
le valeur TaskbarSizeMove, saisissez : ls
Voici le type d'information qui va s'afficher :
ls of node at offset 0x76a18c Node has 1 subkeys and 1 values
offs key name
[76a208] <Folder>
offs size type value name [value if type DWORD
[76a1e4] 4 REG_DWORD <TaskbarSizeMove> 0 [0x0]
Dans ce cas présent, la valeur DWORD n'est pas active puisqu'elle
possède comme données de la valeur le chiffre 0
(0 [0x0]).
4) Saisissez alors cette commande : ed Ta
Vous aurez alors ce message d'avertissement :
EDIT: <Ta> of type REG_DWORD with length 4 [0x4] DWORD:
Old value 0 [0x0], enter new value (prepend 0x if hex, empty to
keep old value)
5) Saisissez le chiffre 1.
Là aussi un petit mot de confirmation s'affiche :
-> 1 DWORD: New value 1 [0x1],
6) Saisissez la commande "Ls" afin de visualiser le
changement de valeur :
ls of node at offset 0x76a18c Node has 1 subkeys and 1 values
offs key name
[76a208] <Folder>
offs size type value name [value if type DWORD
[76a1e4] 4 REG_DWORD <TaskbarSizeMove> 1 [0x1]
7) Appuyez deux fois sur la touche A (pour Q car vous êtes
en clavier américain) pour revenir à l'écran
de départ.
Un autre message apparaît: "About to write file(s)
back! Do it? [n]".
8) Appuyez sur la touche Y.
Enfin, le message suivant annonce la fin des opérations
: "You can try again if it somehow failed, or you selected
wrong - New run? [n] :".
9) Appuyez sur la touche N.
10) Appuyez simultanément sur les touches Ctrl + Alt +
Suppr afin de redémarrer votre ordinateur.
Signalons plusieurs problèmes :
Lors d'un premier test, j'ai eu au redémarrage un message
m'annonçant une "Checksum Error". Rien de grave,
il suffit d'appuyer généralement sur la touche F1
pour que le processus d'initialisation se déroule normalement.
À chaque fois, il semble qu'une vérification du
disque se lance. Là aussi, aucun souci : il suffit de laisser
faire.
Au préalable, il vaut donc mieux initier une vérification
du disque en démarrant à partir de la Console de
récupération puis en lançant la commande
Chkdsk.
Passons maintenant à un exemple un peu plus pratique :
Vous pouvez avoir au démarrage ce type d'erreur "Lsass.exe
- Erreur système". Le problème provient d'un
fichier de ruche SAM qui est manquant ou endommagé.
1) Ouvrez dans ce cas cette arborescence :
HKEY_LOCAL_MACHINE\SYSTEM\Setup\SystemSetupInProgress.
2) Modifiez les données de la valeur sur le chiffre 1.
3) Une fois la procédure terminée, retirez la disquette
puis redémarrez complètement.
Vous obtiendrez un autre message d'erreur.
4) Redémarrez une nouvelle fois sur la disquette et modifiez
la même valeur en lui affectant cette fois-ci le chiffre
0.
Un nouveau fichier SAM sera créé.
Surveiller en temps
réel l'activité du Registre
"Regmon.exe" est un minuscule programme capable d'afficher
en temps réel l'activité du Registre. Vous pouvez
le télécharger à l’adresse www.sysinternals.com/ntw2k/source/regmon.shtml.
1) Dans la boîte de dialogue qui apparaît, choisissez
d'enregistrer le fichier sur votre disque dur. Le nom de cette
archive ZIP est ntregmon.zip.
2) Une fois le fichier téléchargé sur votre
disque dur, double-cliquez dessus afin qu'il se décompresse
à l'emplacement de votre choix.
Trois fichiers sont enregistrés dans un dossier nommé
ntregmon. Il n'y a pas d'installation proprement dite : il suffit
de lancer le seul fichier exécutable.
Vous voilà déjà dans le vif du sujet…
La colonne Process énumère les applications (on
dira plus justement les processus) qui sont en train d'effectuer
une requête dans le Registre
La colonne Request précise si cela concerne une lecture
ou une écriture dans une des entrées du Registre.
La colonne Path précise l'entrée qui est actuellement
sollicitée. Les arborescences HKEY_LOCAL_MACHINE et HKEY_CURRENT_USER
sont respectivement notées HKLM et HKCU.
3) Cliquez sur Démarrer/Tous les programmes/MSN Messenger.
Un nouveau processus est apparu : msnmsgr.exe.
4) Dans la fenêtre Regmon, cliquez sur l'outil Filter/Highlight
(Ctrl+L).
La boîte de dialogue qui apparaît permet l'utilisation
d'un filtre.
Ainsi, seule sera affichée l'activité générée
par un ou plusieurs processus. L'astérisque inscrit par
défaut signifie que tous les processus sont analysés.
5) Dans la zone de texte Include:, saisissez msnmsgr (l'indication
de l'extension n'est pas nécessaire).
Nous n'allons afficher que l'activité du processus et de
l'application correspondante : Msnmsgr.exe.
6) Ne laissez cochées que les cases Log Writes: et Log
Successes.
7) Validez en cliquant sur le bouton Oui dans la boîte de
dialogue de confirmation.
À la condition qu'ils soient couronnés de succès,
seuls les accès en écriture seront alors mentionnés.
Si vous désirez que les inscriptions précédentes
soient effacées, cliquez dans la barre des menus sur Edit/Clear
Display. Un raccourci clavier est indiqué : Ctrl + X.
Si vous double-cliquez sur une des lignes listées, le Registre
s'ouvrira directement dans l'arborescence sélectionnée.
Espionner les modifications
faites dans le Registre pendant l'ouverture ou la fermeture de
session
Le principe consiste à utiliser comme expliqué précédemment
Regmon ainsi qu'un autre outil du même éditeur nommé
Psexec.exe.
1) En Invite de commandes saisissez : psexec -i -s -d c:\regmon.exe
2) Fermez la fenêtre d'Invite de commandes tout en laissant
Regmon ouvert puis fermez votre session interactive
3) Ouvrez de nouveau une session interactive
La fenêtre de Regmon va de nouveau apparaître en ayant
enregistrer l'ensemble des évènements que vous aurez
paramétrés.
Nettoyer le Registre
Pour utiliser ce "Shareware", lancez une recherche sur
son nom RegCleaner.exe dans un moteur de recherche comme Google
ou Yahoo. C'est une archive autoextractive nommée RegCleaner.exe.
Double-cliquez dessus afin de lancer l'installation du programme.
Un raccourci sera placé sur votre Bureau : RegCleaner.
Une fois le programme lancé, un certain nombre de colonnes
apparaîtront :
* Software : recense les programmes ou les modules de programmes
installés sur votre ordinateur.
* Startup List : recense les applications qui se chargent au démarrage
de votre ordinateur.
* Uninstall Menu : recense les applications qui sont listées
dans le module Ajout/Suppression de programmes.
* File Types : recense les extensions des fichiers enregistrés
dans le Registre Windows.
* New File : recense les programmes qui apparaissent quand nous
nous servons de la commande Fichier/Nouveau.
* Shell Extensions : recense les extensions disponibles dans le
Shell. Par exemple, nous pouvons trouver cette ligne : Paint.Picture
- Open - rundll32.exe C:\WINDOWS\system32\SHIMGVW.DLL.
En voici l'explication :
1) Dans le Registre ouvrez : HKEY_CLASSES_ROOT\Paint.Picture.
Ce nom de clé est le nom de classe du fichier. La valeur
(par défaut) contient ceci : Image Bitmap. Nous avons donc
la description du fichier qui permet la gestion de tous les fichiers
possédant une extension .bmp. L'appel vers cette clé
est donc effectué à partir de celle-ci : HKEY_CLASSES_ROOT\.bmp.
2) Ouvrez maintenant HKEY_CLASSES_ROOT\Paint.Picture\shell\open\command.
La valeur (par défaut) contient la même commande
: rundll32.exe C:\WINDOWS\system32\SHIMGVW.DLL,ImageView_Fullscreen
%1. Le fichier Shimgvw.dll permet le lancement du composant Aperçu
des images et des télécopies Windows.
Nous retrouvons les mêmes informations dans le Registre
en parcourant une de ces arborescences : HKEY_CLASSES_ROOT ou
HKEY_LOCAL_MACHINE\SOFTWARE\Classes. Avec le bouton droit de la
souris, cliquez sur un des items proposés puis choisissez
le bouton Advanced info. Les clés du Registre à
supprimer seront affichées. Par ailleurs, il est possible
de décocher certaines cases en se servant du bouton droit
de la souris.
En double-cliquant sur le champ de la colonne Extension, vous
retrouverez l'ordre alphabétique. Nous pouvons nous rendre
compte que, pour chaque extension de fichier, plusieurs actions
sont possibles. Vous les retrouverez en cliquant, dans l'Explorateur
Windows, sur le menu Outils puis sur le sous-menu Options des
dossiers… et, enfin, sur l'onglet Types de fichiers.
* Backup : il est toujours utile de faire une sauvegarde avant
toute suppression !
Cliquez sur le menu Tools. Un certain nombre d'outils sont proposés
:
* Modify the Search menu : vous permet de supprimer un certain
nombre d'options présentes dans le menu Rechercher.
* Modify The Open With menu : vous permet de supprimer un certain
nombre d'applications quand, dans le menu contextuel d'un fichier
inconnu, vous cliquez sur le sous-menu Ouvrir avec…
* Le bouton Done vous permet de revenir vers la page précédente.
Admettons que, après la désinstallation d'une application
par Ajout/Suppression de programmes, vous désiriez procéder
à un nettoyage du Registre. Cliquez sur le champ de colonne
Software puis cochez le programme visé et, enfin, cliquez
sur le bouton Remove Selected.
En cliquant avec le bouton droit de la souris sur un des items
présents dans la colonne Author puis sur l'outil Advanced
Info, vous obtenez la liste des entrées qui ont été
écrites par ce programme.
Regshot16 : prendre
en photo le Registre
Ce petit programme va nous permettre de prendre deux clichés
du Registre Windows afin de pouvoir les comparer. De plus, il
constitue un bon complément à Regmon quand certains
logiciels refusent de fonctionner quand ils détectent la
présence de Regmon en arrière-plan. Il est téléchargeable
à partir de cette adresse : http://the7thlab.mybesthost.com/#h_regshot.
Décompressez une archive nommée regshot17_src_bin.zip
puis une sous-archive nommée regshot1_7_2.zip. Précisons
qu'il n'y a pas d'installation proprement dite. Le programme est
constitué d'un fichier exécutable et de quelques
fichiers annexes.
1) Double-cliquez sur ce fichier exécutable : Regshot.exe.
2) Dans le menu déroulant du bas, choisissez Français.
3) Cliquez sur le bouton 1er passage puis, dans le menu qui apparaît,
sur Passage.
4) Procédez aux changements dans le Registre puis répétez
l’opération précédente en cliquant
sur le bouton 2ème passage.
Notez que le bouton Effacer vous permet de recommencer à
tout moment l'opération de marquage.
5) Une fois la procédure terminée, cliquez sur le
bouton Comparer.
Un document Bloc-notes s'ouvrira automatiquement avec la liste
des clés et des valeurs modifiées, supprimées
et ajoutées.
Dureg : déterminer
la taille du Registre
Dureg est un outil d'Invite de commandes qui se télécharge
à partir de cette adresse : www.microsoft.com/windows2000/techinfo/reskit/tools/existing/dureg-o.asp.
Une fois l'installation lancée le fichier exécutable
sera placé dans \Program Files\Resource Kit.
La syntaxe est la suivante :
dureg [/cr | /cu | /u | /lm | /a] [/s] ["emplacement du Registre"]
["chaîne à rechercher"]
/cr : taille de HKEY_CLASSES_ROOT
/cu : taille de HKEY_CURRENT_USER
/u : taille de HKEY_USERS
/lm : taille de HKEY_LOCAL_MACHINE
/a : taille du Registre complet
Afin de déterminer la taille de l'arborescence HKCR saisissez
cette commande :
dureg /cr
Le résultat suivant apparaîtra : Size of HKEY_CLASSES_ROOT
: 12783662
Si vous souhaitez vous limiter à une chaîne en particulier,
saisissez :
dureg /lm "SOFTWARE\Microsoft\Windows\CurrentVersion"
Afin de trouver toutes les occurrences de l'expression "spyware"
dans le Registre saisissez :
dureg /s "spyware"
Regln : Créer
des liens symboliques dans le Registre Windows
Cet outil se télécharge à partir de cette
page web : http://www.ntinternals.net/regln/
Le fichier obtenu sera celui-ci : regln-x86.exe
Signalons tout de suite que cet outil est à manier avec
d'extrêmes précautions !
1) Renommez le fichier de cette façon : regln.exe
À titre de test saisissez cette commande :
regln HKEY_LOCAL_MACHINE\SOFTWARE\Lien1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET
Si vous ouvrez le Registre vous vous apercevrez que l'arborescence
HKEY_LOCAL_MACHINE\SOFTWARE\Lien1 est l'exact miroir de celle-ci
: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET
Le principe est donc de créer une clé qui soit le
reflet fidèle de la clé cible.
2) Ajoutez une valeur quelconque dans HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET
Les modifications apportées seront automatiquement répercutées
dans HKEY_LOCAL_MACHINE\SOFTWARE\Lien1
N'oubliez pas d'actualiser les changements en appuyant sur la
touche F5.
3) Afin de supprimer le lien symbolique entre ces deux clés
saisissez cette commande :
regln -d HKEY_LOCAL_MACHINE\SOFTWARE\Lien1
Cette dernière clé sera automatiquement supprimée.
Afin de créer un lien symbolique qui soit de type "volatile"
(simplement placé en mémoire) et qui sera donc automatiquement
supprimé au redémarrage de la machine servez-vous
du commutateur -v :
regln -v Clé_Lien Clé_Cible
Quelques précisions maintenant :
Seules ces deux arborescences sont valides :
HKEY_LOCAL_MACHINE et HKEY_USERS
Signalons que les clés HKEY_CLASSES_ROOT et HKEY_CURRENT_USER
sont déjà des clés miroir. Si vous essayez
d'utiliser ces arborescences vous obtiendrez ce type d'erreur
: "Wrong Registry Root Key Name (Win32)".
Vous pouvez vous servir des abréviations suivantes : HKLM
et HKU (ou HKUS).
Par ailleurs, vous ne pouvez créer de lien symbolique d'une
clé racine vers l'autre. Par exemple, de HKLM\FREEWARE
vers HKLM\SOFTWARE. Vous obtiendrez une erreur [Error C000000D].
Il vous est possible par contre de faire ceci : regln.exe HKLM\SOFTWARE\FREEWARE
HKLM\SOFTWARE
Vous obtiendrez un curieux effet de "Vache qui rit".
Signalons que vous devez toujours penser à supprimer au
préalable le lien symbolique avant de éventuellement
supprimer la clé cible.
Nous allons maintenant reprendre un exemple exposé sur
le site et qui permet de tester rapidement certaines modifications
dans le Registre.
Il est plus simple de ne laisser que deux fenêtres ouvertes
: l'éditeur du Registre et la fenêtre d'Invite de
commandes….
1) Dans le Registre renommez HKLM\Software\Microsoft\Windows\CurrentVersion
en HKLM\Software\Microsoft\Windows\CurrentVersion1
Non, non, vous ne risquez rien !
2) Créez un lien symbolique de ..\CurrentVersion vers ..\CurrentVersion1
:
regln HKLM\Software\Microsoft\Windows\CurrentVersion HKLM\Software\Microsoft\Windows\CurrentVersion1
Si vous avez un message d'erreur cela signifie qu'un programme
a entre temps écrit une donnée dans le Registre
et recréé automatiquement une nouvelle clé
nommée CurrentVersion… Actualisez dans ce cas le
registre en appuyant sur la touche F5 puis supprimez la clé.
3) Exportez cette arborescence.
4) Éditez le fichier .reg obtenu puis remplacez toutes
les occurrences de CurrentVersion1 par CurrentVersion2
5) Exportez le fichier .reg.
Nous aurons donc trois arborescences :
CurrentVersion qui pointe vers CurrentVersion1
CurrentVersion1
CurrentVersion2
6) Procédez à des modifications dans HKLM\Software\Microsoft\Windows\CurrentVersion2.
7) Supprimez le lien symbolique nommé \CurrentVersion :
regln HKLM\Software\Microsoft\Windows\CurrentVersion
8) Créez un lien symbolique de ..\CurrentVersion vers ..\CurrentVersion2
:
regln HKLM\Software\Microsoft\Windows\CurrentVersion HKLM\Software\Microsoft\Windows\CurrentVersion2
9) Une fois vos modifications testées supprimez le lien
symbolique ..\CurrentVersion :
regln -d HKLM\Software\Microsoft\Windows\CurrentVersion
10) Renommez la clé CurrentVersion1 en CurrentVersion.
- Optimiser vos recherches
dans le Registre :
RegScanner se télécharge à partir de cette
adresse : http://www.nirsoft.net/utils/regscanner.html.
Vous pouvez également utiliser un fichier de langue portant
l'extension .ini.
1) Ouvrez le programme.
2) Dans la liste déroulante Base Key, définissez
sur quelle arborescence votre recherche va porter.
3) Dans la zone de texte Find String: saisissez l'expression
que vous voulez rechercher.
4) Si le respect de la casse est important cochez la case Case
Sensitive.
5) Précisez si la recherche doit porter sur les clés,
valeurs ou données de la valeur (Keys, Values, Data).
Dans ce dernier cas il est possible de procéder à une
recherche dans les données au format Unicode présentes
dans les valeurs binaires.
Vous pouvez choisir de n'afficher que les entrées modifiées
depuis une certaine date ou ne faisant qu'une longueur déterminée.
Imaginons que vous souhaitez effectuer une recherche sur toutes
les valeurs commençant par un chemin UNC vous pouvez utiliser
cette expression : \\
6) Afin d'ouvrir directement le Registre dans l'arborescence
trouvée cliquez avec le bouton droit de la souris sur
cette entrée puis sur la commande Open In RegEdit.
|
|