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

  1. Wählen Sie im Menü Datei den Befehl Neues Projekt aus, und klicken Sie auf Windows-Anwendung.

  2. 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.

  3. 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.

  4. 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

  1. 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")
    
  2. Fügen Sie den folgenden Code nach der Klassendeklaration hinzu.

    Dim registryObject As Microsoft.Win32.RegistryKey = Nothing
    
  3. 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

  1. Fügen Sie dem Formular ein Button-Steuerelement mit dem Namen ReadValueButton und dem Text "Read Value" hinzu.

  2. Fügen Sie dem Formular ein TextBox-Steuerelement mit dem Namen showSubKey und dem Text "Enter Subkey" hinzu.

  3. 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)
    
  4. 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

  1. Fügen Sie dem Formular eine Schaltfläche mit dem Namen SetValueButton und dem Text "Set Value" hinzu.

  2. 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)
    
  3. 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

  1. Fügen Sie dem Formular eine Schaltfläche mit dem Namen CreateButton und dem Text "Create Key" hinzu.

  2. 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)
    
  3. 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

  1. Fügen Sie dem Formular eine Schaltfläche mit dem Namen DeleteButton und dem Text "Delete Key" hinzu.

  2. 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)
    
  3. 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