博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

数据导入& 导出注册表

Posted on 2008-08-29 11:30  Anna Yang  阅读(433)  评论(0编辑  收藏  举报
 
数据导入& 导出注册表
 
概述
   当我们需要保存数据,以免下次使用时会自动出现,而不用再次输入,此时我们就可以把数据导入注册表,等到下次需要的时候再从注册表中取出来,最常见的是“用户名”与“密码”的输入。
前加引用:using Microsoft.Win32;
数据导入注册表: 
 public static void WriteRegkey(string keyname, string keyvalue)
        {  
            
//keyname相当于一个地址,地址里面的值为keyvalue
            RegistryKey Regkey = Registry.LocalMachine.CreateSubKey("Software\\NAME");//Software是注册表regedit中的一个文件,NAME是自己的命名
            Regkey.SetValue(keyname, keyvalue);
        }
 
将数据从注册表中导出来: 
 public static string ReadRegkey(string keyname)
        {
            RegistryKey Regkey;
            
try
            {
                Regkey 
= Registry.LocalMachine.OpenSubKey("Software\\NAME");
                
return Regkey.GetValue(keyname, "").ToString();
            }
            
catch
            {
                
return string.Empty;
            }
        }     
 
在form界面有如下按钮:text——txtName; checkBox1——chkbox; Buttons1;comboBox1——cboAge
当点击 Buttons1时,将text和comboBox1中的数据倒入注册表. 
  private void   button1_Click(object sender, EventArgs e)
        {
            
if (chkbox.Checked == true)
            {
                WriteRegkey(
"UID", txtName.Text.Trim());
                WriteRegkey(
"PWD", cboAge.Text.Trim());
               
            }
            
else
            {
                WriteRegkey(
"UID""");
                WriteRegkey(
"PWD""");
               
            }
        }
 
当启动窗口时,将数据从注册表中导入到text和comboBox1中 
 private void Form1_Load(object sender, EventArgs e)
        {
            chkbox.Checked 
= true;
            txtName.Text 
= ReadRegkey("UID");
            cboAge.Text 
= ReadRegkey("PWD");
        }
 
在调转窗口时,将窗口隐藏起来的代码为:this.hide();