winform C#.NET注册表操作类

来源:互联网 发布:nginx rtmp 延时配置 编辑:程序博客网 时间:2024/04/30 14:59
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Win32;

namespace MyName.Cls
{
class ClsRegedit
{
String Path;
String MyKey;
String Name;
String MyValue;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="ParentKey">路径</param>
/// <param name="ThisKey">本键</param>
/// <param name="key">键名</param>
/// <param name="value">键值</param>
public ClsRegedit(String ParentKey, String ThisKey, string key, string value)
{
Path = ParentKey;
MyKey = ThisKey;
Name = key;
MyValue = value;
}
/// <summary>
/// 写注册表的值
/// </summary>
/// <returns></returns>
public string SetRegedit()
{
string StrError;
RegistryKey pregkey = Registry.CurrentUser.OpenSubKey(Path, true);
if (pregkey == null)
{
StrError = "输入的{" + Path + "}主键不存在";
return StrError;
}
else
{
//如果键没有打开就表示不存在,TempKey会被返回null
Registry TempKey = pregkey.OpenSubKey(MyKey);
if (TempKey == null)
{
//如果不存在就创建键
RegistryKey MyKey = pregkey.CreateSubKey(MyKey);
MyKey.SetValue(Name, MyValue);
}
else
{
//如果存在就将其显示出来
MyKey.SetValue(Name, MyValue);
}
}
}
/// <summary>
/// 取注册表的值
/// </summary>
/// <returns>返回字符串</returns>
public string GetRegeditValue()
{
string StrError;
string StrPath;
StrPath = Path + @"/" + MyKey;
RegistryKey pregkey = Registry.CurrentUser.OpenSubKey(StrPath, true);
if (pregkey == null)
{
StrError = "输入的{" + StrPath + "}主键不存在";
return StrError;
}
else
{
return pregkey.GetValue("HOSTIP").ToString();
}
}
}
}  
原创粉丝点击