Conseils

Introduction à l'utilisation du registre Windows

Introduction à l'utilisation du registre Windows

Le registre est simplement une base de données qu'une application peut utiliser pour stocker et récupérer des informations de configuration (dernière taille et position de la fenêtre, options utilisateur et informations ou toute autre donnée de configuration). Le registre contient également des informations sur Windows (95/98 / NT) et sur votre configuration Windows.

La base de données du registre est stockée dans un fichier binaire. Pour le trouver, exécutez regedit.exe (utilitaire d’éditeur de registre Windows) dans votre répertoire Windows. Vous verrez que les informations dans le registre sont organisées de la même manière que l'explorateur Windows. Nous pouvons utiliser regedit.exe pour afficher, modifier ou ajouter des informations sur le registre. Il est évident que des modifications de la base de registre peuvent entraîner une panne du système (bien sûr, si vous ne savez pas ce que vous faites).

INI contre registre

Il est probablement très bien connu qu'à l'époque de Windows 3.xx, les fichiers INI étaient un moyen courant de stocker des informations sur les applications et d'autres paramètres configurables par l'utilisateur. L'aspect le plus terrifiant des fichiers INI est qu'ils ne sont que des fichiers texte que l'utilisateur peut facilement modifier (les modifier ou même les supprimer). Sous Windows 32 bits, Microsoft recommande d’utiliser Registry pour stocker le type d’informations que vous placeriez normalement dans les fichiers INI (les utilisateurs sont moins susceptibles de modifier les entrées de registre).

Delphi fournit une prise en charge complète de la modification des entrées dans le registre système Windows: via la classe TRegIniFile (même interface de base que la classe TIniFile pour les utilisateurs de fichiers INI avec Delphi 1.0) et la classe TRegistry (wrapper de bas niveau pour le registre Windows et les fonctions sur le registre).

Astuce simple: écrire dans le registre

Comme mentionné précédemment dans cet article, les opérations de base du registre (à l'aide de la manipulation de code) lisent des informations à partir du registre et écrivent des informations dans la base de données.

Le morceau de code suivant changera le papier peint de Windows et désactivera l'économiseur d'écran à l'aide de la classe TRegistry. Avant de pouvoir utiliser TRegistry, nous devons ajouter une unité de registre à la clause uses en haut du code source.

~~~~~~~~~~~~~~~~~~~~~~~~~
utilise le registre;
procédure TForm1.FormCreate (Sender: TObject);
var
reg: TRegistry;
commencer
reg: = TRegistry.Create;
avec reg commence
essayer
si OpenKey (' Control Panel desktop', False), alors commencez
// change le papier peint et le pose en mosaïque
reg.WriteString ('Wallpaper', 'c: windows CIRCLES.bmp');
reg.WriteString ('TileWallpaper', '1');
// désactiver l'économiseur d'écran // ('0' = désactiver, '1' = activer)
reg.WriteString ('ScreenSaveActive', '0');
// mettre à jour les modifications immédiatement
SystemParametersInfo (SPI_SETDESKWALLPAPER, 0, nil, SPIF_SENDWININICHANGE);
SystemParametersInfo (SPI_SETSCREENSAVEACTIVE, 0, nil, SPIF_SENDWININICHANGE);
fin
enfin
reg.Free;
fin;
fin;
fin;
~~~~~~~~~~~~~~~~~~~~~~~~~

Ces deux lignes de code qui commencent par SystemParametersInfo… forcent Windows à mettre à jour immédiatement les informations de fond d'écran et d'économiseur d'écran. Lorsque vous exécutez votre application, le bitmap de papier peint de Windows est remplacé par l'image Circles.bmp, c'est-à-dire si vous avez une image circles.bmp dans votre répertoire Windows. (Remarque: votre écran de veille est maintenant désactivé.)