Heim >Backend-Entwicklung >C#.Net-Tutorial >Implementierungscode für den C#-Registrierungsvorgang

Implementierungscode für den C#-Registrierungsvorgang

黄舟
黄舟Original
2016-12-22 13:41:091161Durchsuche

Das Verzeichnis der zweiten Ebene enthält fünf vordefinierte Primärschlüssel: HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS und HKEY_CURRENT_CONFIG.

Erklären wir die Funktionen dieser 5 Klassen.

Der Primärschlüssel von HKEY_CLASSES_ROOT enthält die Dateierweiterung und anwendungsbezogene Informationen sowie die Informationen, die von Window Shell und OLE zum Speichern der Registrierung verwendet werden . Die Unterschlüssel unter diesem Primärschlüssel bestimmen, wie diese Dateiklasse und ihre Symbole in WINDOWS angezeigt werden. Dieser Primärschlüssel wird von HKEY_LCCAL_MACHINESOFTWAREClasses zugeordnet.
HKEY_CURRENT_USER Dieser Primärschlüssel enthält Informationen über den aktuellen Benutzer, wie z. B. Benutzerfensterinformationen, Desktop-Einstellungen usw.

Der Primärschlüssel HKEY_LOCAL_MACHINE enthält die Installations- und Konfigurationsinformationen der Computersoftware und -hardware.
Der Primärschlüssel HKEY_USERS zeichnet die Einstellungsinformationen des aktuellen Benutzers auf Unter diesem Primärschlüssel wird ein Unterschlüssel generiert, der mit dem Anmeldenamen des Benutzers übereinstimmt. Dieser Unterschlüssel speichert die Desktopeinstellungen, Hintergrundbitmaps, Tastenkombinationen, Schriftarten und andere Informationen des aktuellen Benutzers. Im Allgemeinen greifen Anwendungen nicht direkt auf den Primärschlüssel zu, sondern über den Primärschlüssel HKEY_CURRENT_USER.

 HKEY_CURRENT_CONFIG Dieser Primärschlüssel speichert die aktuellen Hardwarekonfigurationsinformationen des Computers. Diese Konfigurationen können je nach Art des aktuell verbundenen Netzwerks oder der Installation der Hardwaretreibersoftware geändert werden.

C# unterstützt auch die Bearbeitung der Registrierung. Das .NET Framework stellt zwei Klassen im Microsoft.Win32-Namespace zur Verfügung, um die Registrierung zu betreiben: Registry und RegistryKey. Beide Klassen sind versiegelte Klassen und dürfen nicht vererbt werden. Im Folgenden stellen wir diese beiden Klassen vor.

Die Registry-Klasse stellt 7 öffentliche statische Felder bereit, die 7 grundlegende Primärschlüssel darstellen (von denen zwei im XP-System nicht verfügbar sind und hier nicht vorgestellt werden): Registry.ClassesRoot, Registry.CurrentUser, Registry.LocalMachine , Registry.Users, Registry.CurrentConfig. Ich denke, Sie werden auf einen Blick erkennen, welchen Tasten sie entsprechen.

Die RegistryKey-Klasse stellt Methoden zum Betreiben der Registrierung bereit. Es ist zu beachten, dass der Betrieb der Registrierung den Systemberechtigungen entsprechen muss, andernfalls wird ein Fehler ausgegeben.

Schauen wir uns nun einige häufig verwendete Methoden zum Betreiben der Registrierung an

Der Prototyp der Methode zum Erstellen eines Unterschlüssels ist:


public RegistryKey CreateSubKey( string sunbkey) ;



Der Parameter sunbkey stellt den Namen oder Pfadnamen des zu erstellenden Unterschlüssels dar. Wenn die Erstellung erfolgreich ist, wird der erstellte Unterschlüssel zurückgegeben, andernfalls wird null zurückgegeben.

Der Methodenprototyp zum Öffnen eines Unterschlüssels ist:


public RegistryKey OpenSubKey(string name);
public RegistryKey OpenSubKey(string name,bool beschreibbar); 🎜 >
Der Parametername gibt den Namen des zu öffnenden Unterschlüssels oder seinen Pfadnamen an. Der Parameter beschreibbar gibt an, ob der geöffnete Unterschlüssel geändert werden darf. Der mit der ersten Methode geöffnete Unterschlüssel ist schreibgeschützt. Die Microsoft.Win32-Klasse stellt uns auch eine weitere Methode zum Öffnen der Registrierung auf dem Remotecomputer zur Verfügung. Der Methodenprototyp ist:


 public static RegistryKey OpenRemoteBaseKey(RegistryHive hKey,string machineName); 🎜>
Der Prototyp der Methode zum Löschen eines Unterschlüssels ist:


public void DeleteKey(string subkey);


Diese Methode wird zum Löschen des angegebenen verwendet Primärschlüssel. Wenn der zu löschende Unterschlüssel auch den Primärschlüssel enthält, schlägt das Löschen fehl und es wird eine Ausnahme zurückgegeben. Wenn Sie den Unterschlüssel und die Unterschlüssel im Verzeichnis vollständig löschen möchten, können Sie den Prototyp der Methode verwenden lautet wie folgt:


public void DeleteKeyTree(string subkey);


Der Methodenprototyp zum Lesen des Schlüsselwerts lautet wie folgt:


public object GetValue(string name);
public object GetValue( string name, object defaultValue);


Der Parametername stellt den Namen des Schlüssels dar und der Rückgabetyp ist ein Objekttyp . Wenn der angegebene Schlüssel nicht existiert, wird null zurückgegeben. Wenn dies fehlschlägt und Sie nicht möchten, dass der zurückgegebene Wert null ist, können Sie den Parameter defaultValue angeben. Wenn ein Parameter angegeben wird, wird der durch den Parameter angegebene Wert zurückgegeben, wenn das Lesen fehlschlägt.

Der Methodenprototyp zum Festlegen von Schlüsselwerten lautet wie folgt:


öffentliches Objekt SetValue(Stringname, Objektwert);

Das Obige ist der Inhalt Weitere Informationen zum Implementierungscode für den C#-Registrierungsvorgang finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn