Создание раздела реестра на языке 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]); } } } }
Результат
Читайте также: