Voici une explication des principales clefs qui constituent la base de registre. Comme expliqué dans cette page, la Base de registre est le cœur de Windows, c’est dans la base de registre que les paramètres de Windows et des programmes sont stockés : les couleurs de votre bureau, la langue par dé faut de Word, le son associé à l’arrivée d’un nouveau mail, les paramètres de votre imprimante : tout y est !!
Sommaire
HKEY_CLASSES_ROOT (HKCR) : Gestion des extensions et types de fichiers
HKEY_CURRENT_USER (HKCU) : Paramètres utilisateurs.
HKEY_LOCAL_MACHINE (HKLM) : Paramètres associés au PC.
HKEY_USERS (HKU) : Ensemble des paramètres utilisateurs
HKEY_CURRENT_CONFIG : Paramètres sur la configuration du PC.
Il s’agit de la fusion de HKLM\Software\Classes et HKCU\Software\Classes.Cette partie du registre contient les informations sur les associations de fichiers et de manière plus générale les enregistrements de classes pour les objets COM (class registrations for Component Object Model).
- Les associations de fichiers sont enregistrées dans cette partie :
Elles sont réalisées en deux parties :
HKCR\.ext : la valeur par défaut de cette valeur contient le nom de la classe de programme associée a l’extension.
HKCR\progclasse : contient les renseignements à propos de la classe associée à l’extension.
Par exemple :
L’extension .txt à une valeur par défaut « txtfile »
Dans le clef progclasse, des clefs résument les principales actions possibles sur l’extension :
OpenWithList : les programmes apparaissant sous la clef OpenWithList apparaissent dans le menu contextuel Ouvrir Avec, ce qui permet de configurer des programmes alternatifs.
ShellNew : cette sous clef permet de définir un modèle de document à partir duquel Windows crée un nouveau document vide (menu contextuel Nouveau…). La clef ShellNew contient les valeurs suivantes :
_ Command : nom du programme à exécuter
_ Data : données à placer dans le fichier à créer (ignoré si FileName ou NullFile existe)
_ FileName : contient le chemin et nom du fichier modèle
_ NullFile : si cette valeur existe alors le fichier créé est vide.
Les valeurs suivantes sont aussi possibles :
PerceivedType : renseigne sur le type de fichier, les valeurs usuelles sont Image, Text, Audio, Video, Compressed, System.
Content Type : indique le type MIME
OpenWithProgIDs : contient une liste alternative de programmes associés, apparaît dans Ouvrir avec / Choisir le programme. Ces applications doivent aussi être déclarées dans HKCR\Applications.
En regardant dans HKCR\txtfile, on trouve le type de fichier Document texte et par exemple la ligne d ecommande qui est éxécutée si on double clique sur un fichier txt : lancement de NOTEPAD.EXE suivi du nom de fichier.
D’autres sous clefs peuvent être présentes :
Shell : contient des verbes, qui sont des commandes que Windows exécute pour compléter certaines actions : Edit, Explore, Find, Open, Open As, Play, Print, PrintTo, Preview, Properties, RunAs (ces verbes sont automatiquement traduits par Windows.
La valeur par défaut contient la chaine apparaissant dans le menu (avec éventuellement un raccourci clavier précédé de &) Ouvrir avec &Word.
La sous clef command contient la commande à exécuter (par exemple %SystemRoot%\system32\NOTEPAD.EXE %1 pour les txtfile).
Les valeurs suivantes sont possibles :
AlwaysShowExt : cette valeur vide force l’explorateur à afficher l’extension
CurVer : peut contenir un numéro de version
DefaultIcon : la valeur contient le chemin-nom de fichier-index de l’icône associée au fichier.
FriendlyTypeName : contient le nom apparaissant dans l’explorateur, remplace le nom du programclass (ce qui est une nouveauté de Windows XP).
EditFlags : permet de protéger la classe contre les modifications par l’utilisateur.
InfoTip : message apparaissant dans la bulle d’aide.
IsShortcut : valeur vide, indique à l’explorateur qu’il s’agit d’un raccourci.
NeverShowExt : cette valeur vide force l’explorateur à ne pas indiquer l’extension.
Sous Windows 8 vous pouvez changer les associations de fichiers à l’aide de l’outil Définir les associations :
Classes spéciales :
HKCR\*. : classe par défaut, s’applique aux extensions qui ne sont pas déclarées
HKCR\Directory : s’applique aux répertoires
HKCR\Drive : s’applique aux lecteurs
HKCR\Folder : : s’applique aux dossiers ou lecteurs système : panneau de configuration, Poste de Travail, …
HKCR\CLSID : contient les classe COM, représentées par leur GUID
HKCU contient les paramètres utilisateur de Windows. C’est la clef de voute du fonctionnement des profils.
HKCU\AppEvents : contient les associations de sons aux évènements (cf Panneau de Configuration /Son).
HKCU\Console : contient les paramètres des fenêtres MS-DOS.
HKCU\Control Panel : Windows stocke les principaux paramètres de Windows configurés par le Panneau de Configuration.
HKCU\Environment : contient les variables d’environnement utilisateur
HKCU\Keyboard Layout : contient les paramètres régionaux du clavier
HKCU\Network : contient les informations des lecteurs réseau utilisateurs
HKCU\Printers : contient les informations des imprimantes utilisateurs
HKCU\SessionInformation : contient une valeur ProgramCount, qui liste le nombre d’applications actives dans Windows.
HKCU\Software : les clefs doivent être organisées de la sorte :
HKCU\Software\Editeur\Programme\Version\
Il est courant d’omettre Version ou de le remplacer par CurrentVersion.
HKCU\Software\Classes : contient les associations de fichiers spécifiques à l’utilisateur. Ces valeurs sont prioritaires, en cas de conflit par rapport à celles qui sont contenues dans HKCR.
HKEY_CURRENT_USER\Software\Classes\VirtualStore, contient toutes les clés virtualisées par UAC, cf Windows Vista – UAC FAQ
HKLM contient les paramètres du PC.
HKLM\Hardware : la clef HARDWARE est recréée par Windows chaque fois que le système redémarre. Elle contient les renseignements sur la configuration que Windows détecte. Cette branche présente donc peu d’intérêts à modifier car elle est volatile, par contre il peut être utile d’y prendre des informations pour un inventaire de la configuration.. L’utilitaire msinfo32 affiche ces informations de manière comprehensive.
HKLM\Hardware\ACPI contient les informations sur le BIOS ACPI.
HKLM\Hardware\Description contient les informations sur le BIOS, le ou les processeurs et les bus.
HKLM\Hardware\DeviceMap établit les correspondances entre les périphériques détectés et leur drivers dans HKLM\System.
HKLM\Hardware\RessourceMap établit les correspondances entre les ressources de l’ordinateur et les périphériques les utilisant.
HKLM\SAM\SAM est un lien vers HKLM\SECURITY (voir ci dessous).
HKLM\SECURITY contient la SAM dans la sous clef SAM et les stratégies locales dans la sous clef Policies.
Par défaut même les administrateurs n’ont pas accès à cette clef, mais ils peuvent se l’octroyer (fortement déconseillé, on vous aura prévenu…).
HKLM\Software : comme dans HKCU, les clefs doivent être organisées de la sorte :
HKLM\Software\Editeur\Programme\Version\
Les paramètres qui se trouvent dans cette branche s’appliquent à tous les utilisateurs.
Les paramètres qui sont écrits dans cette clef sont virtualisés par UAC, cf Windows Vista – UAC FAQ
HKLM\Software\Classes, correspond à HKEY_CLASS_ROOT (voir ci dessus).
HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall contient la liste des programmes installés (telle qu’elle apparait dans Ajout / Suppression de programmes. cf http://support.microsoft.com/kb/314481
HKLM\SYSTEM : cette branche contient les informations sur la configuration de l’ordinateur, les sous clefs son appelées ControlSetN, N commençant à 001. Windows maintient toujours au moins deux jeux de configuration afin d’être sur de pouvoir démarrer en choisissant la dernière bonne configuration.
HKLM\SYSTEM\CurrentControlSet contient un lien vers le jeu de configuration courant, identifié par Windows dans HKLM\SYSTEM\Select
Contient la liste des profiles utilisateurs, caractérisés par leur SID.
En plus des profils utilisateurs, cette branche contient le profil .Default qui contient les paramètres par défaut des utilisateurs.
Si le PC est incorporé dans un domaine, et que vous placez un profil par défaut dans le répertoire NETLOGON du serveur, c’est ce profil qui sera chargé par Défaut.
Il s’agit de HKLM\System\CurrentControlSet\Hardware Profiles\Current.
Leave a Reply