天天看點

C#.NET系統資料庫操作類

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();

}

}

}

}