技术开发 频道

注册表操作类


【IT168技术文档】
public class RegCtrl { private static RegistryKey rootkey; /// /// 构造根键为RootKey的注册表操作类,缺省打开Current_User主键 /// public RegCtrl(string RootKey) { switch (RootKey.ToUpper()) { case "CLASSES_ROOT": rootkey = Registry.ClassesRoot; break; case "CURRENT_USER": rootkey = Registry.CurrentUser; break; case "LOCAL_MACHINE": rootkey = Registry.LocalMachine; break; case "USERS": rootkey = Registry.Users; break; case "CURRENT_CONFIG": rootkey = Registry.CurrentConfig; break; case "DYN_DATA": rootkey = Registry.DynData; break; case "PERFORMANCE_DATA": rootkey = Registry.PerformanceData; break; default: rootkey = Registry.CurrentUser; break; } } /// /// 读取路径为keypath,键名为keyname的注册表键值,缺省返回def /// /// /// /// /// public string GetRegVal(string keypath, string keyname, string def) { try { RegistryKey key = rootkey.OpenSubKey(keypath); return key.GetValue(keyname, (object)def).ToString(); } catch { return def; } } /// /// 设置路径为keypath,键名为keyname的注册表键值为keyval /// /// /// /// public bool SetRegVal(string keypath, string keyname, string keyval) { try { RegistryKey key = rootkey.OpenSubKey(keypath, true); key.SetValue(keyname, (object)keyval); return true; } catch { return false; } } /// /// 创建路径为keypath的键 /// /// /// public RegistryKey CreateRegKey(string keypath) { try { return rootkey.CreateSubKey(keypath); } catch { return null; } } /// /// 删除路径为keypath的子项 /// /// /// public bool DelRegSubKey(string keypath) { try { rootkey.DeleteSubKey(keypath); return true; } catch { return false; } } /// /// 删除路径为keypath的子项及其附属子项 /// /// /// public bool DelRegSubKeyTree(string keypath) { try { rootkey.DeleteSubKeyTree(keypath); return true; } catch { return false; } } /// /// 删除路径为keypath下键名为keyname的键值 /// /// /// /// public bool DelRegKeyVal(string keypath, string keyname) { try { RegistryKey key = rootkey.OpenSubKey(keypath, true); key.DeleteValue(keyname); return true; } catch { return false; } } }

0
相关文章