Создание раздела реестра на языке c#
От теории переходим к практике, для начала научимся открывать и создавать разделы реестра
Создание раздела реестра
Для работы нам понадобиться класс RegistryKey, которые предоставляет все необходимые методы для решения наших задач.
Так же добавим ссылку
using Microsoft.Win32;
Далее необходимо создать экземпляр класса RegistryKey.
Например:
RegistryKey regKey = Registry.CurrentUser
метод CreateSubKey
Для создание разделов или подразделов используется метод CreateSubKey;
В первом примере создается раздел «Friends» используя язык c#.
static void regCreateSubKey()
{
string nameSubKey = "Friends";
using (RegistryKey regKey = Registry.CurrentUser.CreateSubKey(
nameSubKey))
{
//сообщение, например: успех или ошибка
}
} Результат

метод OpenSubKey
Во втором примере в созданном разделе Friends создадим один подраздел по имени Вася.
static void regCreateSubKeyVasya()
{
string nameSubKey = "Friends";
string nameFriend = "Вася";
using (RegistryKey regKey = Registry.CurrentUser.OpenSubKey(
nameSubKey,true))
{
if (regKey != null)
{
regKey.CreateSubKey(nameFriend);
}
}
} В этом примере используется метод OpenSubKey, который проверяет существует ранее созданный нами раздел Friends, если данного раздела нет, то regKey == null и подраздел Вася создан не будет. Так же вторым параметром указываем true, что означает разрешить запись в данный раздел, false только чтение.
Если нет уверенности, что данный раздел реестра уже создан, то можно использовать метод CreateSubKey, который при отсутствие раздела Friends создаст его сам, в отличие от предыдущего метода.
static void regCreateSubKeyVasya()
{
string nameSubKey = "Friends";
string nameFriend = "Вася";
using (RegistryKey regKey = Registry.CurrentUser.CreateSubKey(
nameSubKey).CreateSubKey(nameFriend))
{
//...
}
} Результат

Создадим раздел реестра с подразделом
В созданный подраздел Вася добавим подраздел Пупкин.
static void regCreateSeveralSubKey()
{
string nameSubKey = "Friends";
string nameFriend = "Вася";
string lastNameFriend = "Пупкин";
using (RegistryKey regKey = Registry.CurrentUser.OpenSubKey(
nameSubKey, true))
{
if (regKey != null)
{
regKey.CreateSubKey(nameFriend).CreateSubKey(lastNameFriend);
}
}
} Результат

В разделе Friends создадим ещё несколько подразделов используя цикл for и метод CreateSubKey
static void regCreateSeveralSubKey()
{
string nameSubKey = "Friends";
string [] arrayName = {"Маша", "Саша", "Даша", "Паша", "Сергей"};
using (RegistryKey regKey = Registry.CurrentUser.OpenSubKey(
nameSubKey,true))
{
if (regKey != null)
{
for(int i = 0; i < arrayName.Length; i++)
{
regKey.CreateSubKey(arrayName[i]);
}
}
}
} Результат

Читайте также: