Dans la version 3.1 de Microsoft Windows, les applications installées étaient
configurées vis-à-vis de Windows grâce à des fichiers de configuration
(dont l'extension était .ini). D'autre part, deux fichiers de configuration
était propres à Windows:
- win.ini: permettant de définir les paramètres relatifs à l'utilisateur
(c'est-à-dire les choix de langue, de couleur, de papier peint...)
- system.ini: permettant de configurer Windows vis-à-vis de la machine
(carte-son, résolution...)
Enfin, un fichier (reg.dat) permettait de configurer les associations de fichiers à des programmes
(définir avec quel programme un fichier comportant une extension donnée va être ouvert).
Depuis, Microsoft a décidé de regrouper toutes les informations dans deux fichiers
(que l'on appelle "base de registre"). Il s'agit des fichiers:
- "user.dat" - contenant les paramètres utilisateur
- "system.dat" - contenant les
paramètres système
Microsoft a gardé les fichiers "system.ini"
et "win.ini" pour assurer la compatibilité avec les programmes fonctionnant
sous Windows 3.1.
Le but de cette base de registre est de regrouper toutes les informations de configuration,
pour d'une part créer un semblant d'organisation, d'autre part limiter le nombre de fichiers
de configuration sur le disque dur.
La base de registre est un fichier contenant une arborescence dans laquelle
les paramètres sont classés par critère. A chaque critère
correspond une branche qui peut encore être subdivisée en autres branches
(une arborescence...). Chaque élément de configuration est situé
tout au bout d'une branche dans ce que l'on nomme "une clé".
Le problème majeur de cette base de registre est que, suite à l'installation
d'un programme, il se créent plusieurs clés dans divers endroits de la base de registre,
or, à la désinstallation, les clés sont effacées (dans le meilleur des cas)
mais l'arborescence reste... Lorsque vous installez des programmes à la pelle et que vous
les effacez ... le système ralentit ... il faut au bout d'un certain temps réinstaller
Windows...
Il est possible de modifier ce gigantesque capharnaüm, mais cela ne se fait pas sans
précautions (la base de registre est le coeur de windows - pas de base de registre,
pas de windows):
Il ne vous reste plus qu'à modifier les clés que vous voulez éditer...
Dans l'éditeur de base de registre (regedit.exe) vous apercevez
six branches principales:
- HKEY_CLASSES_ROOT (appelé HKCR): elle contient toutes les associations
de fichiers, le nom des premières clés correspond à l'extension
de fichier à laquelle on s'intéresse.
Plus bas dans l'arborescence sont indiquées des clés correpondant aux noms des
types de fichiers, auxquelles sont attribuées:
- l'icone par défaut (DefaultIcon)
- le type d'action associée (shell): ouvrir, exécuter, ...
- HKEY_CURRENT_USER (appelé HKCU): elle définit les paramètres relatif à
l'utilisateur (vous à priori), ils sont classés en six sous-catégories:
- control panel: c'est le panneau de configuration
- software: relatifs aux logiciels installés
- AppEvents: ce sont les sons systèmes (le coin-coin quand vous cliquez :)
- keyboard layout: les paramètres du clavier
- Remote Access: relatifs aux accès réseau à distance
- Network: Configuration du réseau
- HKEY_LOCAL_MACHINE (appelé HKLM): elle contient toutes les informations concernant
votre machine:
- hardware: processeur et carte-mère
- enum: matériel (périphériques...)
- network: réseau, Internet
- software: les configurations des logiciels communes à tous les utilisateurs
- HKEY_USERS (appelé HKU): elle contient les paramètres relatifs
à chacun des utilisateurs séparément
- HKEY_CURRENT_CONFIG (appelé HKCC): C'est un raccourci vers la configuration
actuellement utilisée dans HKLM\Config.
Elle contient les paramètres relatifs
à la configuration courante de l'ordinateur
- HKEY_DYN_DATA (appelé HKDD):C'est un raccourci vers les éléments
actuellement utilisés uniquement en mémoire vive dans HKLM\Config
(informations volatiles: temporaires jusqu'à la réinitialisation du système).