Автор Тема: Запись и чтение в реестр REG_BINARY, REG_DWORD, REG_QWORD, REG_SZ  (Прочитано 7079 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sysadmin

  • Administrator
  • сисадми́н
  • *****
  • Сообщений: 8748
  • Karma: +121/-0
  • Пол: Мужской
    • Share Post
    • сайт для сис. админов и не только...
Этот пример демонстрирует запись и чтение из реестра выше указанных значений:

using System;
using Microsoft.Win32;

public class Example
{
    public static void Main()
    {
        // Delete and recreate the test key.
        Registry.CurrentUser.DeleteSubKey("RegistryValueKindExample", false);
        RegistryKey rk = Registry.CurrentUser.CreateSubKey("RegistryValueKindExample");

        // Create name/value pairs.

        // This overload supports QWord (long) values.
        rk.SetValue("QuadWordValue", 42, RegistryValueKind.QWord);

        // The following SetValue calls have the same effect as using the
        // SetValue overload that does not specify RegistryValueKind.
        //
        rk.SetValue("DWordValue", 42, RegistryValueKind.DWord);
        rk.SetValue("MultipleStringValue", new string[] { "One", "Two", "Three" }, RegistryValueKind.MultiString);
        rk.SetValue("BinaryValue", new byte[] { 10, 43, 44, 45, 14, 255 }, RegistryValueKind.Binary);
        rk.SetValue("StringValue", "The path is %PATH%", RegistryValueKind.String);

        // This overload supports setting expandable string values. Compare
        // the output from this value with the previous string value.
        rk.SetValue("ExpandedStringValue", "The path is %PATH%", RegistryValueKind.ExpandString);


        // Display all name/value pairs stored in the test key, with each
        // registry data type in parentheses.
        //
        string[] valueNames = rk.GetValueNames();
        foreach (string s in valueNames)
        {
            RegistryValueKind rvk = rk.GetValueKind(s);
            switch (rvk)
            {
                case RegistryValueKind.MultiString:
                    string[] values = (string[])rk.GetValue(s);
                    Console.Write("\r\n {0} ({1}) =", s, rvk);
                    for (int i = 0; i < values.Length; i++)
                    {
                        if (i != 0) Console.Write(",");
                        Console.Write(" \"{0}\"", values[i]);
                    }
                    Console.WriteLine();
                    break;

                case RegistryValueKind.Binary:
                    byte[] bytes = (byte[])rk.GetValue(s);
                    Console.Write("\r\n {0} ({1}) =", s, rvk);
                    for (int i = 0; i < bytes.Length; i++)
                    {
                        // Display each byte as two hexadecimal digits.
                        Console.Write(" {0:X2}", bytes[i]);
                    }
                    Console.WriteLine();
                    break;

                default:
                    Console.WriteLine("\r\n {0} ({1}) = {2}", s, rvk, rk.GetValue(s));
                    break;
            }
        }
    }
}


« Последнее редактирование: Октябрь 28, 2009, 01:58:40 pm от sysadmin »
дорогу осилит идущий...
......................
MCP, MCTS, RHCSA
......................
also aka xck...

 


xx
Запись и чтение из реестра в C#

Автор sysadmin

2 Ответов
19872 Просмотров
Последний ответ Июнь 10, 2015, 06:39:17 pm
от sysadmin
moved
Перенесено: IE реестр страница по умолчанию

Автор sysadmin

0 Ответов
1 Просмотров
Последний ответ Февраль 15, 2014, 09:15:17 pm
от sysadmin
xx
Казахстанский реестр санкций на запрет выезда ха рубеж

Автор sysadmin

2 Ответов
3101 Просмотров
Последний ответ Август 10, 2014, 10:59:46 am
от sysadmin
xx
Определить медленное чтение / копирование файлов с общих ресурсов

Автор sysadmin

4 Ответов
1133 Просмотров
Последний ответ Июнь 01, 2016, 08:28:29 pm
от sysadmin