Le répertoire de deuxième niveau contient cinq clés primaires prédéfinies : HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS et HKEY_CURRENT_CONFIG.
Expliquons respectivement les fonctions de ces 5 classes
La clé primaire de HKEY_CLASSES_ROOT contient l'extension de fichier et les informations relatives à l'application, ainsi que les informations utilisées par Window Shell et OLE pour stocker le registre . Les sous-clés sous cette clé primaire déterminent comment afficher cette classe de fichiers et leurs icônes dans WINDOWS. Cette clé primaire est mappée à partir de HKEY_LCCAL_MACHINESOFTWAREClasses.
HKEY_CURRENT_USER Cette clé primaire contient des informations sur l'utilisateur actuel telles que des informations sur la fenêtre utilisateur, les paramètres du bureau, etc.
La clé primaire HKEY_LOCAL_MACHINE contient les informations d'installation et de configuration des logiciels et du matériel informatique. Ces informations sont disponibles pour tous les utilisateurs.
La clé primaire HKEY_USERS enregistre les informations de configuration de l'utilisateur actuel à chaque fois que l'utilisateur se connecte. au système, une sous-clé identique au nom de connexion de l'utilisateur est générée sous cette clé primaire. Cette sous-clé enregistre les paramètres du bureau de l'utilisateur actuel, le bitmap d'arrière-plan, les touches de raccourci, les polices et d'autres informations. Généralement, les applications n'accèdent pas directement à la clé primaire, mais y accèdent via la clé primaire HKEY_CURRENT_USER.
HKEY_CURRENT_CONFIG Cette clé primaire enregistre les informations de configuration matérielle actuelle de l'ordinateur. Ces configurations peuvent être modifiées en fonction du type de réseau actuellement connecté ou de l'installation du logiciel pilote matériel.
C# prend également en charge l'édition du registre. Le framework .NET fournit deux classes dans l'espace de noms Microsoft.Win32 pour faire fonctionner le registre : Registry et RegistryKey. Les deux classes sont des classes scellées et ne peuvent pas être héritées. Ci-dessous, nous présentons respectivement ces deux classes.
La classe Registry fournit 7 champs statiques publics, représentant 7 clés primaires de base (dont deux ne sont pas disponibles dans le système XP et ne seront pas présentées ici) : Registry.ClassesRoot, Registry.CurrentUser , Registry.LocalMachine , Registre.Utilisateurs, Registre.CurrentConfig. Je pense que vous saurez à quelles touches elles correspondent en un coup d'œil.
La classe RegistryKey fournit des méthodes pour faire fonctionner le registre. Il convient de noter que le fonctionnement du registre doit être conforme aux autorisations du système, sinon une erreur sera générée.
Jetons maintenant un coup d'œil à quelques méthodes couramment utilisées pour faire fonctionner le registre
Le prototype de la méthode pour créer une sous-clé est :
public RegistryKey CreateSubKey( string sunbkey) ;
Le paramètre sunbkey représente le nom ou le chemin de la sous-clé à créer. La sous-clé créée est renvoyée si la création réussit, sinon null est renvoyé.
Le prototype de méthode pour ouvrir une sous-clé est :
public RegistryKey OpenSubKey(string name);
public RegistryKey OpenSubKey(string name,bool writable); 🎜 >
Le nom du paramètre indique le nom de la sous-clé à ouvrir ou son nom de chemin. Le paramètre writable indique si la sous-clé ouverte peut être modifiée. La sous-clé ouverte par la première méthode est en lecture seule. La classe Microsoft.Win32 nous fournit également une autre méthode pour ouvrir le registre sur l'ordinateur distant. Le prototype de la méthode est :
public static RegistryKey OpenRemoteBaseKey(RegistryHive hKey,string machineName); 🎜>
Le prototype de la méthode pour supprimer une sous-clé est :
public void DeleteKey(string subkey);
Cette méthode est utilisée pour supprimer la sous-clé spécifiée; clé primaire. Si la sous-clé à supprimer contient également la clé primaire, la suppression échouera et une exception sera renvoyée. Si vous souhaitez supprimer complètement la sous-clé et les sous-clés du répertoire, vous pouvez utiliser la méthode DeleteSubKeyTree. est la suivante :
public void DeleteKeyTree(string subkey);
Le prototype de la méthode de lecture de la valeur de la clé est la suivante :
public object GetValue(string name);
public object GetValue( string name, object defaultValue);
Le nom du paramètre représente le nom de la clé et le type de retour est un type d'objet. . Si la clé spécifiée n'existe pas, null est renvoyé. S'il échoue et que vous ne souhaitez pas que la valeur renvoyée soit nulle, vous pouvez spécifier le paramètre defaultValue. Si un paramètre est spécifié, la valeur spécifiée par le paramètre sera renvoyée si la lecture échoue.
Le prototype de la méthode pour définir les valeurs des clés est le suivant :
objet public SetValue(nom de chaîne, valeur de l'objet);
Ce qui précède est le contenu du code d'implémentation de l'opération de registre C# , pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !