C#注册表的读取、创建、修改、删除操作

注册表,包含Windows安装以及已安装软件和设备的所有配置信息;

        常用访问注册表类:RegistryRegistryKey

1、读取注册表中的信息

主要三个方法,RegistryKey类中的:

OpenSubKey();

GetSubKeyNames();

GetValueNames();

示例代码:

    public static void Main()
    { 
        RegistryKey registry=Registry.LocalMachine;
        RegistryKey regkey = registry.OpenSubKey(@"SOFTWARE");
        foreach(var subkey in regkey.GetSubKeyNames())
        {
            Console.WriteLine("子项名:{0}",subkey);
            RegistryKey regiskey = regkey.OpenSubKey(subkey);
            foreach (var key in regiskey.GetValueNames())
            {
                Console.WriteLine("{0}  :  {1}",key,regiskey.GetValue(key));                
            }
        }
    }

 

2、创建和修改注册表的信息

修改操作直接通过SetValue()实现; 

CreateSubKey();

SetValue();

示例代码: 

    public static void Main()
    {
        RegistryKey rklm = Registry.LocalMachine;
        RegistryKey hardware =rklm.OpenSubKey(@"HARDWARE",true);
        RegistryKey hwkey = hardware.CreateSubKey("HW");
        hwkey.SetValue("value", "abc");
        foreach (string key in hardware.GetSubKeyNames())
        { 
            Console.WriteLine("子项名:{0}",key);
            RegistryKey registry=hardware.OpenSubKey(key);
            foreach (string str in registry.GetValueNames())
            {
                Console.WriteLine("{0}:{1}",str,registry.GetValue(str));
            }
        }        
    }

C#注册表的读取、创建、修改、删除操作_第1张图片

 

3、删除注册表中的信息 

DeleteSubKey()//用于删除不包含任何子键的子键

DeleteSubKeyTree()//彻底删除子键目录,包括所有子级

DeleteValue()//主要用于删除指定的键值

你可能感兴趣的:(c#,开发语言)