Freigeben über


Vorgehensweise: Erstellen eines Registrierungsschlüssels und Festlegen des Werts in Visual Basic

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, um anzugeben, unter welchem Hive der Schlüssel platziert werden soll, sowie den Namen des Schlüssels. Der Parameter Subkey unterscheidet nicht zwischen Groß- und Kleinschreibung. 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 darin fest

  1. Verwenden Sie die CreateSubkey-Methode, um anzugeben, unter welchem Hive der Schlüssel platziert werden soll, sowie den Namen des Schlüssels. In diesem Beispiel wird der Registrierungsschlüssel MyTestKey unter HKEY_CURRENT_USER erstellt.

    My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
    
  2. Legen Sie den Wert mit der SetValue Methode fest. Im folgenden Beispiel wird der Zeichenfolgenwert festgelegt. "MyTestKeyValue" zu "Dies ist ein Testwert".

    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 der Stringwert MyTestKeyValue auf This is a test value festgelegt.

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

Überprüfen Sie die Registrierungsstruktur, um einen geeigneten Speicherort für Ihren Schlüssel zu finden. Sie können z. B. den HKEY_CURRENT_USER\Software Schlüssel des aktuellen Benutzers öffnen und einen Schlüssel mit dem Namen Ihres Unternehmens erstellen. Fügen Sie dann die Registrierungswerte zum Schlüssel Ihres Unternehmens hinzu.

Wenn Sie die Registrierung von einer Webanwendung lesen, hängt der aktuelle Benutzer von der Authentifizierung und dem Identitätswechsel ab, die in der Webanwendung implementiert sind.

Es ist sicherer, Daten in den Benutzerordner zu schreiben (CurrentUser) und nicht auf den lokalen Computer (LocalMachine).

Wenn Sie einen Registrierungswert erstellen, müssen Sie entscheiden, was zu tun ist, wenn dieser Wert bereits vorhanden ist. Ein anderer Prozess, vielleicht ein böswilliger Prozess, hat möglicherweise bereits den Wert erstellt und hat Zugriff darauf. Wenn Sie Daten in den Registrierungswert einfügen, sind die Daten für den anderen Prozess verfügbar. Um dies zu verhindern, verwenden Sie die GetValue Methode. Es wird zurückgegeben Nothing , wenn der Schlüssel noch nicht vorhanden ist.

Es ist nicht sicher, geheime Schlüssel wie Kennwörter in der Registrierung als Nur-Text zu speichern, auch wenn der Registrierungsschlüssel durch ACLs (Zugriffssteuerungslisten) geschützt ist.

Die folgenden Bedingungen können zu einer Ausnahme führen:

.NET Framework-Sicherheit

Um diesen Prozess auszuführen, erfordert Ihre Assembly eine Berechtigungsstufe, die von der RegistryPermission Klasse gewährt wird. Wenn Sie in einem teilweise vertrauenswürdigen Kontext ausgeführt werden, kann der Prozess eine Ausnahme aufgrund unzureichender Berechtigungen auslösen. Ebenso muss der Benutzer über die richtigen ACLs zum Erstellen oder Bearbeiten von Einstellungen verfügen. Eine lokale Anwendung, die über die Sicherheitsberechtigung für den Codezugriff verfügt, verfügt möglicherweise nicht über die Betriebssystemberechtigung. Weitere Informationen finden Sie unter Code Access Security Basics.

Hinweis

Code Access Security (CAS) ist in allen Versionen von .NET Framework und .NET veraltet. Aktuelle Versionen von .NET berücksichtigen keine CAS-Anmerkungen und erzeugen Fehler, wenn CAS-bezogene APIs verwendet werden. Entwickler sollten alternative Mittel zum Ausführen von Sicherheitsaufgaben suchen.

Siehe auch