2008年5月28日 星期三

如何將資料寫入/讀取登錄檔

有時候我們會將一些資料寫入登入檔

但是又怕資安問題,所以一搬在寫入前都會做一些編碼的動作

以下為登入檔寫入/讀取之方式......

RegistryKey rk = Registry.LocalMachine;
//機碼路徑位置:HKEY_LOCAL_MACHINE\SOFTWARE\Db_Config
rk = rk.CreateSubKey(@"Software\Db_Config");
//以二進位方式存資料(先轉Unicode)[也可以先行加密後再寫入]
rk.SetValue("ConStr", Encoding.Unicode.GetBytes("ConnectionString"), RegistryValueKind.Binary);

//讀取登錄檔值
string bStr = "";
object obj = rk.GetValue("ConStr");
byte[] b = (byte[])obj;
foreach (int s in b)
{
    bStr += s;
}
MessageBox.Show(bStr);

//將二進位轉成字串格式讀取
string str = "";
str = Encoding.Unicode.GetString((byte[])rk.GetValue("ConStr"));
MessageBox.Show(str);

沒有留言: