/// <summary> /// 获取注册表中对应值数据类型 /// </summary> /// <param name="regValueKind">注册表数据类型</param> /// <returns>对应数据类型</returns> private static RegistryValueKind GetRegValueKind(ERegValueKind regValueKind) { switch (regValueKind) { case ERegValueKind.Unknown: { return(RegistryValueKind.Unknown); } case ERegValueKind.String: { return(RegistryValueKind.String); } case ERegValueKind.ExpandString: { return(RegistryValueKind.ExpandString); } case ERegValueKind.Binary: { return(RegistryValueKind.Binary); } case ERegValueKind.DWord: { return(RegistryValueKind.DWord); } case ERegValueKind.MultiString: { return(RegistryValueKind.MultiString); } case ERegValueKind.QWord: { return(RegistryValueKind.QWord); } default: { return(RegistryValueKind.String); } } }
/// <summary> /// 设置指定的键值内容 /// </summary> /// <param name="regDomain">注册表基项域</param> /// <param name="subItem">注册表项名称</param> /// <param name="regKey">键值名称</param> /// <param name="valueKind">键值类型</param> /// <param name="value">键值内容</param> /// <returns>执行情况</returns> public static bool CF_WriteRegeditKey(ERegDomain regDomain, string subItem, string regKey, ERegValueKind valueKind, object value) { //判断键值名称是否为空 if (string.IsNullOrWhiteSpace(regKey)) { return(false); } //判断注册表项是否存在 if (!CF_ExistSubItem(regDomain, subItem)) { CF_CreateSubItem(regDomain, subItem); } //以可写方式打开注册表项 using (RegistryKey key = OpenSubKey(regDomain, subItem, true)) { //注册表项打开失败 if (key == null) { return(false); } try { key.SetValue(regKey, value, GetRegValueKind(valueKind)); } catch (Exception ex) { throw ex; } } return(true); }
/// <summary> /// 设置指定的键值内容 /// </summary> /// <param name="regDomain">注册表基项域</param> /// <param name="subItem">注册表项名称</param> /// <param name="regKey">键值名称</param> /// <param name="valueKind">键值类型</param> /// <param name="value">键值内容</param> /// <returns>执行情况</returns> public static bool CF_WriteRegeditKey(this ERegDomain regDomain, string subItem, string regKey, ERegValueKind valueKind, object value) { return(RegOperate.CF_WriteRegeditKey(regDomain, subItem, regKey, valueKind, value)); }