C#实现注册表 LocalMachine 目录下CURD工具类
【1】注册表是什么?
百度百科 https://baike.baidu.com/item/%E6%B3%A8%E5%86%8C%E8%A1%A8/101856?fr=aladdin
【2】怎么打开注册表?
Windows+R >>>>>> regedit
【3】C# 源码
1 ///2 /// 注册表 CURD 3 /// 在LocalMachine 目录文件下 4 /// 5 public class RegeditUtils 6 { 7 /// 8 /// 注册信息节点是否存在 9 /// 10 /// "SOFTWARE\\Microsoft"格式 11 /// 12 public static bool IsExsits(string key) 13 { 14 var indicator = true; 15 if (Registry.LocalMachine.OpenSubKey(key) == null) 16 { 17 indicator = false; 18 } 19 return indicator; 20 } 21 /// 22 /// 创建注册信息 23 /// 24 /// "SOFTWARE\\Microsoft"格式 25 public static void Create(string key) 26 { 27 Registry.LocalMachine.CreateSubKey(key); 28 } 29 /// 30 /// 更新注册表字段值 31 /// 32 /// 传入注册表节点 33 /// 节点内字段名称 34 /// 需要设置的值 35 public static void Update(RegistryKey rsg,string name,string value) 36 { 37 if (rsg!=null) 38 { 39 if (!string.IsNullOrEmpty(name)) 40 { 41 rsg.SetValue(name, value); //写入 42 } 43 rsg.Close(); //关闭 44 } 45 } 46 /// 47 /// 获取注册表节点实体 48 /// 49 /// "SOFTWARE\\Microsoft"格式 50 /// 51 public static RegistryKey Read(string key) 52 { 53 RegistryKey rsg = Registry.LocalMachine.OpenSubKey(key, true); 54 return rsg; 55 } 56 57 /// 58 /// 获取注册表节点实体内某个属性的值 59 /// 60 /// "SOFTWARE\\Microsoft"格式 61 /// 传入属性的键值 62 /// 63 public static string ReadPropValue(string key,string prop) 64 { 65 var res = ""; 66 RegistryKey rsg = Registry.LocalMachine.OpenSubKey(key, true); 67 if (rsg!=null) 68 { 69 var obj = rsg.GetValue(prop); 70 if (obj!=null) 71 { 72 res = obj.ToString(); 73 } 74 } 75 return res; 76 } 77 /// 78 /// 删除注册表节点 79 /// 80 /// 81 /// "SOFTWARE\\Microsoft"格式 82 public static void Delete(string key) 83 { 84 if (IsExsits(key)) 85 { 86 Registry.LocalMachine.DeleteSubKey(key); 87 } 88 } 89 90 /// 91 /// 创建注册表节点,并对相应字段赋值 92 /// 93 /// 节点 94 /// 属性名称 95 /// 值 96 public static void CreateRegedit(string key, string name, string value) 97 { 98 try 99 { 100 101 //判断当前节点是否存在 102 if (!IsExsits(key)) 103 { 104 //不存在该节点,创建节点 105 Create(key); 106 } 107 //获取该节点 108 var rsg = Read(key); 109 //该节点字段属性赋值 110 Update(rsg, name, value); 111 } 112 catch (Exception ex) 113 { 114 Log.Error(ex); 115 } 116 117 } 118 }
此博文为原创,转载请注明出处!!!!!