Exemplarische Vorgehensweise: Erstellen eines Registrierungsschlüssels und Ändern seiner Werte
Aktualisiert: November 2007
Diese exemplarische Vorgehensweise veranschaulicht, wie Sie eine Anwendung erstellen, die die Registrierungsschlüssel auf einem Computer durchsucht, sodass die Benutzer Schlüssel erstellen und löschen können. Außerdem erfahren Sie, wie Sie Werte lesen, abrufen, festlegen und löschen.
So erstellen Sie das Hauptformular
Wählen Sie im Menü Datei den Befehl Neues Projekt aus, und klicken Sie auf Windows-Anwendung.
Fügen Sie dem Formular ein TextBox-Steuerelement mit dem Namen Value hinzu. Geben Sie im Eigenschaftenfenster in der rechten unteren Ecke im Feld (Name) den Namen Value ein.
Fügen Sie dem Formular ein ListBox-Steuerelement mit dem Namen History hinzu. Geben Sie im Eigenschaftenfenster in der rechten unteren Ecke im Feld (Name) den Namen History ein.
Erstellen Sie eine zusätzliche Variable, und fügen Sie sie unmittelbar nach der Klassendeklaration ein.
Dim tempKey As Microsoft.Win32.RegistryKey
So durchsuchen Sie Registrierungsschlüssel in einem Kombinationsfeld
Fügen Sie dem Formular ein ComboBox-Steuerelement mit dem Namen selectHive hinzu. Dieses Steuerelement dient zum Anzeigen des Registrierungshives und ermöglicht Ihnen die Auswahl einer Struktur. Füllen Sie es mit Werten, indem Sie den folgenden Code dem Load-Ereignis des Formulars hinzufügen.
selectHive.Items.Add("ClassesRoot") selectHive.Items.Add("CurentConfig") selectHive.Items.Add("CurrentUser") selectHive.Items.Add("DynData") selectHive.Items.Add("LocalMachine") selectHive.Items.Add("PerformanceData") selectHive.Items.Add("Users")
Fügen Sie den folgenden Code nach der Klassendeklaration hinzu.
Dim registryObject As Microsoft.Win32.RegistryKey = Nothing
Fügen Sie dem SelectedIndexChanged-Ereignis von selectHive folgenden Code hinzu.
Select Case selectHive.Text Case "ClassesRoot" registryObject = My.Computer.Registry.ClassesRoot Case "CurrentConfig" registryObject = My.Computer.Registry.CurrentConfig Case "CurrentUser" registryObject = My.Computer.Registry.CurrentUser Case "DynData" registryObject = My.Computer.Registry.DynData Case "LocalMachine" registryObject = My.Computer.Registry.LocalMachine Case "PerformanceData" registryObject = My.Computer.Registry.PerformanceData Case "Users" registryObject = My.Computer.Registry.Users End Select
So lesen Sie einen Wert in einem Registrierungsschlüssel
Fügen Sie dem Formular ein Button-Steuerelement mit dem Namen ReadValueButton und dem Text "Read Value" hinzu.
Fügen Sie dem Formular ein TextBox-Steuerelement mit dem Namen showSubKey und dem Text "Enter Subkey" hinzu.
Fügen Sie dem Click-Ereignis von ReadValueButton folgenden Code hinzu.
tempKey = registryObject If tempKey Is Nothing Then MsgBox("Please select a registry hive.") Return End If Value.Text = CStr(tempKey.GetValue(ShowSubKey.Text)) History.Items.Add("Read Value " & selectHive.Text & _ "\" & ShowSubKey.Text)
Testen Sie die Anwendung, indem Sie den Namen eines vorhandenen Unterschlüssels in das Textfeld showSubKey eingeben. Wenn auf ReadValueButton geklickt wird, wird im Textfeld Value der Wert angezeigt.
So legen Sie einen Wert in einem Registrierungsschlüssel fest
Fügen Sie dem Formular eine Schaltfläche mit dem Namen SetValueButton und dem Text "Set Value" hinzu.
Fügen Sie dem Click-Ereignis der Schaltfläche folgenden Code hinzu.
tempKey = registryObject If tempKey Is Nothing Then MsgBox("Please select a registry hive.") Return End If If Value.Text Is Nothing Then MsgBox("Please enter a value.") Return End If tempKey.SetValue(showSubKey.Text, Value.Text) tempKey.Close() History.Items.Add("Set Value " & selectHive.Text & _ "\" & showSubKey.Text)
Testen Sie die Anwendung, indem Sie in das Textfeld Wert einen neuen Wert für einen Unterschlüssel eingeben und sich dann mithilfe der Schaltfläche ReadValueButton vergewissern, dass der Wert geändert wurde.
So erstellen Sie einen Registrierungsschlüssel
Fügen Sie dem Formular eine Schaltfläche mit dem Namen CreateButton und dem Text "Create Key" hinzu.
Fügen Sie dem Click-Ereignis der Schaltfläche folgenden Code hinzu.
registryObject.CreateSubKey(showSubKey.Text) History.Items.Add("Create Key " & selectHive.Text & _ "\" & showSubKey.Text)
Testen Sie die Anwendung, indem Sie in das Textfeld showSubKey einen neuen Schlüsselnamen eingeben und sich dann mithilfe des Registrierungseditors vergewissern, dass der Registrierungsschlüssel erstellt wurde.
So löschen Sie einen Registrierungsschlüssel
Fügen Sie dem Formular eine Schaltfläche mit dem Namen DeleteButton und dem Text "Delete Key" hinzu.
Fügen Sie dem Click-Ereignis der Schaltfläche folgenden Code hinzu.
tempKey = registryObject If tempKey Is Nothing Then MsgBox("Please select a registry hive.") Return End If If showSubKey.Text Is Nothing Then MsgBox("Please enter a subkey.") Return End If registryObject.DeleteSubKey(showSubKey.Text) History.Items.Add("Delete Key " & selectHive.Text & _ "\" & showSubKey.Text)
Testen Sie die Anwendung, indem Sie einen Unterschlüssel löschen und sich mithilfe des Registrierungseditors vergewissern, dass der Schlüssel gelöscht wurde.
Siehe auch
Aufgaben
Problembehandlung: Bearbeiten der Registrierung
Konzepte
Allgemeine Registrierungsaufgaben
Sicherheit und die Registrierung
Lesen aus der und Schreiben in die Registrierung mit My
Lesen von der und Schreiben in die Registrierung mithilfe des Microsoft.Win32-Namespaces