首页 > 代码库 > C# 访问操作注册表整理
C# 访问操作注册表整理
一、.net注册表操作简介
.net中Registry 类,RegistryKey 类提供了操作注册表的接口
RegistryValueKind,用于指定操作注册表的数据类型。
二、使用实例
//获取子节点数量 Console.WriteLine(Registry.LocalMachine.SubKeyCount); //获取所有自己点的键值 string[] subs = Registry.LocalMachine.GetSubKeyNames(); foreach (var item in subs) { Console.WriteLine(item); } //打开子节点 RegistryKey sub1 = Registry.LocalMachine.OpenSubKey(subs[0]); Console.WriteLine(sub1.Name); //HKEY_LOCAL_MACHINE\BCD00000000 //打开子节点2,特别说明不能\开头,不能包含根节点 RegistryKey sub2 = Registry.LocalMachine.OpenSubKey(@"BCD00000000\Description", true); Console.WriteLine(sub2.Name);//HKEY_LOCAL_MACHINE\BCD00000000\Description //获取项下的 键值 string[] names = sub2.GetValueNames(); foreach (var item in names) { //获取值 Console.WriteLine(item + "--->" + sub2.GetValue(item)); } //特别注意,如果想写入内容,在打开注册表的时候writable,需要设置成true //创建键值 sub2.SetValue("zhangsan", "1234", RegistryValueKind.String); //创建子项 RegistryKey sub3 = sub2.CreateSubKey("sub3"); sub3.SetValue("sub3_key", 1100, RegistryValueKind.DWord);
三、特别说明
1.打开注册表示,不能\开头,不能包含根节点
//打开子节点2,特别说明不能\开头,不能包含根节点 RegistryKey sub2 = Registry.LocalMachine.OpenSubKey(@"BCD00000000\Description", true); Console.WriteLine(sub2.Name);//HKEY_LOCAL_MACHINE\BCD00000000\Description
2.写入注册表当前程序需要有足够的权限,推荐一管理员身份运行当前程序。
3.如果想写入内容,在打开注册表的时候writable,需要设置成true
4.对于已经存在的键值或项,则直接覆盖不抛出异常
更多:
Registry 类
RegistryKey 类
注册表相关枚举
C#如何以管理员身份运行程序(转)
C# 访问操作注册表整理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。