Поделиться через


Пошаговое руководство. Создание раздела реестра и изменение его значений

Обновлен: Ноябрь 2007

В данном пошаговом руководстве демонстрируется создание приложения для обзора разделов реестра на компьютере, позволяющего пользователям создавать и удалять разделы. Также демонстрируется чтение, получение, установка и удаление значений.

Создание главной формы

  1. Выберите команду Создать проект в меню Файл и выберите Приложение Windows.

  2. Добавьте в форму элемент управления TextBox с именем Value. В правом нижнем углу окна Свойства в поле (Имя) введите Value.

  3. Добавьте в форму элемент управления ListBox с именем History. В правом нижнем углу окна Свойства в поле (Имя) введите History.

  4. Создайте дополнительную переменную и добавьте ее сразу после объявления класса.

    Dim tempKey As Microsoft.Win32.RegistryKey
    

Просмотр разделов реестра в поле со списком

  1. Добавьте в форму элемент управления ComboBox с именем selectHive, который будет отображать кусты реестра с возможностью выбора одного из них. Заполните этот элемент управления, добавив следующий код в событие загрузки формы.

    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. Добавьте следующий код после объявления класса.

    Dim registryObject As Microsoft.Win32.RegistryKey = Nothing
    
  3. Добавьте следующий код в событие selectHiveSelectedIndexChanged.

    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
    

Чтение значения из раздела реестра

  1. Добавьте в форму элемент управления Button с именем ReadValueButton и текстом "Прочитать значение".

  2. Добавьте в форму элемент управления TextBox с именем showSubKey и текстом "Введите подраздел".

  3. Добавьте следующий код в событие ReadValueButtonClick.

    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. Проверьте приложение, введя имя существующего раздела в поле showSubKey. При нажатии кнопки ReadValueButton данное значение будет отображено в поле Value.

Установка значения в разделе реестра

  1. Добавьте в форму кнопку с именем SetValueButton и текстом "Установить значение".

  2. Добавьте следующий код к событию Click.

    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. Протестируйте приложение, введя новое значение подраздела в поле Value и затем подтвердив, что значение было изменено с помощью кнопки с именем ReadValueButton.

Создание раздела реестра

  1. Добавьте в форму кнопку с именем CreateButton и текстом "Создать раздел".

  2. Добавьте следующий код к событию Click.

    registryObject.CreateSubKey(showSubKey.Text)
    History.Items.Add("Create Key " & selectHive.Text & _
                      "\" & showSubKey.Text)
    
  3. Протестируйте приложение, введя имя нового ключа в текстовое поле showSubKey и используя Редактор реестра, чтобы убедиться, что раздел был создан.

Удаление раздела реестра

  1. Добавьте в форму кнопку с именем DeleteButton и текстом "Удалить раздел".

  2. Добавьте следующий код к событию Click.

    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. Протестируйте код, удалив подраздел и используя Редактор реестра, чтобы убедиться, что раздел был удален.

См. также

Задачи

Устранение неполадок, связанных с управлением реестром

Основные понятия

Типичные операции с реестром

Безопасность и реестр

Чтение и запись в реестр с использованием объекта My

Чтение реестра и запись в него с использованием пространства имен Microsoft.Win32