Gewusst wie: Erstellen eines Registrierungsschlüssels und Festlegen seiner Werte in Visual Basic
Aktualisiert: November 2007
Die CreateSubKey-Methode des My.Computer.Registry-Objekts kann zum Erstellen eines Registrierungsschlüssels verwendet werden.
Prozedur
So erstellen Sie einen Registrierungsschlüssel
Verwenden Sie die CreateSubKey-Methode, und geben Sie dort den Hive, in den der Schlüssel eingefügt werden soll, sowie den Namen des Schlüssels an. Beim Parameter Subkey wird nicht zwischen Groß-/Kleinschreibung unterschieden. In diesem Beispiel wird der Registrierungsschlüssel MyTestKey unter HKEY_CURRENT_USER erstellt.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
So erstellen Sie einen Registrierungsschlüssel und legen einen Wert dafür fest
Verwenden Sie die CreateSubkey-Methode, und geben Sie dort den Hive, in den der Schlüssel eingefügt werden soll, sowie den Namen des Schlüssels an. In diesem Beispiel wird der Registrierungsschlüssel MyTestKey unter HKEY_CURRENT_USER erstellt.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
Legen Sie den Wert mit der SetValue-Methode fest. In diesem Beispiel wird der Zeichenfolgenwert festgelegt. "MyTestKeyValue" wird "This is a test value" zugewiesen.
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey", _ "MyTestKeyValue", "This is a test value.")
Beispiel
In diesem Beispiel wird der Registrierungsschlüssel MyTestKey unter HKEY_CURRENT_USER erstellt und anschließend dem Zeichenfolgenwert MyTestKeyValue die Zeichenfolge This is a test value zugewiesen.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
' Change MyTestKeyValue to This is a test value.
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey", _
"MyTestKeyValue", "This is a test value.")
Robuste Programmierung
Untersuchen Sie die Registrierungsstruktur, um eine adäquate Position für den Schlüssel zu ermitteln. Beispielsweise können Sie den Schlüssel HKEY_CURRENT_USER\Software für den aktuellen Benutzer öffnen und einen Schlüssel mit dem Namen Ihrer Firma erstellen. Anschließend fügen Sie die Registrierungswerte dem Schlüssel für das Unternehmen hinzu.
Wenn Sie die Registrierung von einer Webanwendung aus lesen, hängt der aktuelle Benutzer von der Authentifizierung und dem Identitätswechsel ab, die in der Webanwendung implementiert wurden.
Es ist sicherer, die Daten in den Benutzerordner (CurrentUser) anstatt in den lokalen Computer (LocalMachine) zu schreiben.
Wenn Sie einen Registrierungswert erstellen, müssen Sie festlegen, was geschehen soll, wenn der Wert bereits vorhanden ist. Möglicherweise wurde der Wert bereits von einem bösartigen Prozess erstellt, der nun darauf zugreifen kann. Wenn Sie dem Registrierungswert Daten hinzufügen, kann der andere Prozess darauf zugreifen. Um dies zu verhindern, verwenden Sie die GetValue-Methode. Die Methode gibt Nothing zurück, wenn der Schlüssel noch nicht vorhanden ist.
Es ist nicht sicher, geheime Daten wie Kennwörter in der Registrierung als reinen Text zu speichern. Dies gilt auch, wenn die Registrierung durch Zugriffssteuerungslisten (ACLs) geschützt ist.
Die folgenden Bedingungen können eine Ausnahme verursachen:
Der Name des Schlüssels lautet Nothing (ArgumentNullException).
Der Benutzer ist nicht zum Erstellen von Registrierungsschlüsseln berechtigt (SecurityException).
Der Name des Schlüssels ist länger als 255 Zeichen (ArgumentException).
Der Schlüssel ist geschlossen (IOException).
Der Registrierungsschlüssel ist schreibgeschützt (UnauthorizedAccessException).
Sicherheit
Um diesen Prozess auszuführen, benötigt die Assembly eine Berechtigungsebene, die von der RegistryPermission-Klasse gewährt werden muss. Bei Ausführung in einer teilweise vertrauenswürdigen Umgebung kann der Vorgang aufgrund fehlender Berechtigungen eine Ausnahme auslösen. Ebenso muss der Benutzer die korrekten ACLs für das Erstellen oder das Schreiben von Einstellungen besitzen. Eine lokale Anwendung, die über die Berechtigung zum Zugriff auf Code verfügt, ist nicht automatisch zum Zugriff auf das Betriebssystem berechtigt. Weitere Informationen finden Sie unter Grundlagen der Codezugriffssicherheit.
Siehe auch
Aufgaben
Problembehandlung: Bearbeiten der Registrierung
Exemplarische Vorgehensweise: Erstellen eines Registrierungsschlüssels und Ändern seiner Werte
Konzepte
Allgemeine Registrierungsaufgaben
Grundlagen der Codezugriffssicherheit