使用C#如何写入/读取注册表信息
来源:互联网 发布:java构造方法重载 编辑:程序博客网 时间:2024/05/09 16:23
在一些系统软件开发中,常常将一些软件运行环境、系统配置等信息写入到注册表中,除非是所谓的绿色软件。在Windows平台上的软件,几乎都会和注册表打交道。在本节中,将介绍如何将信息写入到注册表中。
【范例19-5】在本例中演示如何使用RegistryKey类将信息写入到注册表中,如示例代码19-5所示。
示例代码19-5
01 using Microsoft.Win32; //关于注册表的命名空间
02 namespace Ex_19_5
03 {
04 public partial class Form1 : Form
05 {
06 public Form1() //窗口类的构造函数
07 {
08 InitializeComponent(); //完成窗口的初始化工作
09 }
10 private void Form1_Load(object sender, EventArgs e)
//窗体加载事件
11 {
12 RegistryKey rsg = null; //声明一个变量
13 if (Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft").SubKeyCount <= 0)
14 {
15 Registry.LocalMachine.DeleteSubKey("SOFTWARE//Microsoft");
//删除
16 Registry.LocalMachine.CreateSubKey("SOFTWARE//Microsoft");
//创建
17 }
18 rsg = Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft", true); //true表可以修改
19 rsg.SetValue("HoanReg", "写入的值"); //写入
20 rsg.Close(); //关闭
21 }
22 }
23 }
【运行结果】选择“调试”|“启动调试”命令运行程序。
【代码解析】在本例中,写入注册表之前,首先要判断是否存在注册键,第13行代码就是实现这个功能的。在第16行中,如果不存在注册键就创建它,然后在第19行进行写入,写入之前先要打开,将OpenSubKey方法的第二个参数设置成true,表示可写。
读取注册表
读取注册表在软件开发中,也是一项很常见的任务。因为很多软件的相关环境变量都是存储在注册表中。例如,在Windows操作系统中,IE的主页地址信息就是存储在注册表中,甚至计算机名称、用户名等信息也是存储在注册表中的。
【范例19-6】在本例中,将读取在范例19-5中写入的注册表信息,如示例代码19-6所示。
示例代码19-6
01 using Microsoft.Win32; //注册表命名空间
02 namespace Ex_19_7
03 {
04 public partial class Form1 : Form
05 {
06 public Form1() //窗口类
07 {
08 InitializeComponent(); //完成初始化
09 }
10 private void button1_Click(object sender, EventArgs e)
//铵钮单击事件
11 {
12 try //可能有异常,放在try块中
13 {
14 RegistryKey rsg = null; //声明变量
15 rsg = Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft", true); //true表可修改
16 if (rsg.GetValue("HoanReg") != null) //如果值不为空
17 {
18 this.textBox1.Text =rsg.GetValue("HoanReg").ToString(); //读取值
19 }
20 else
21 this.label1.Text = "该键不存在!";
22 rsg.Close(); //关闭
23 }
24 catch (Exception ex) //捕获异常
25 {
26 this.label1.Text = ex.Message; //显示异常信息
27 }
28 }
29 }
30 }
【运行结果】选择“调试”|“启动调试”命令运行程序。
【代码解析】在本例中,要读取的值是上一个例子中写入的值。在第15行代码处首先打开要读取的注册键,然后在第16行用if语句和GetValue方法判断是否有数据读出。如果有读出,则在第18行中将它赋给文本框。
【范例19-5】在本例中演示如何使用RegistryKey类将信息写入到注册表中,如示例代码19-5所示。
示例代码19-5
01 using Microsoft.Win32; //关于注册表的命名空间
02 namespace Ex_19_5
03 {
04 public partial class Form1 : Form
05 {
06 public Form1() //窗口类的构造函数
07 {
08 InitializeComponent(); //完成窗口的初始化工作
09 }
10 private void Form1_Load(object sender, EventArgs e)
//窗体加载事件
11 {
12 RegistryKey rsg = null; //声明一个变量
13 if (Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft").SubKeyCount <= 0)
14 {
15 Registry.LocalMachine.DeleteSubKey("SOFTWARE//Microsoft");
//删除
16 Registry.LocalMachine.CreateSubKey("SOFTWARE//Microsoft");
//创建
17 }
18 rsg = Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft", true); //true表可以修改
19 rsg.SetValue("HoanReg", "写入的值"); //写入
20 rsg.Close(); //关闭
21 }
22 }
23 }
【运行结果】选择“调试”|“启动调试”命令运行程序。
【代码解析】在本例中,写入注册表之前,首先要判断是否存在注册键,第13行代码就是实现这个功能的。在第16行中,如果不存在注册键就创建它,然后在第19行进行写入,写入之前先要打开,将OpenSubKey方法的第二个参数设置成true,表示可写。
读取注册表
读取注册表在软件开发中,也是一项很常见的任务。因为很多软件的相关环境变量都是存储在注册表中。例如,在Windows操作系统中,IE的主页地址信息就是存储在注册表中,甚至计算机名称、用户名等信息也是存储在注册表中的。
【范例19-6】在本例中,将读取在范例19-5中写入的注册表信息,如示例代码19-6所示。
示例代码19-6
01 using Microsoft.Win32; //注册表命名空间
02 namespace Ex_19_7
03 {
04 public partial class Form1 : Form
05 {
06 public Form1() //窗口类
07 {
08 InitializeComponent(); //完成初始化
09 }
10 private void button1_Click(object sender, EventArgs e)
//铵钮单击事件
11 {
12 try //可能有异常,放在try块中
13 {
14 RegistryKey rsg = null; //声明变量
15 rsg = Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft", true); //true表可修改
16 if (rsg.GetValue("HoanReg") != null) //如果值不为空
17 {
18 this.textBox1.Text =rsg.GetValue("HoanReg").ToString(); //读取值
19 }
20 else
21 this.label1.Text = "该键不存在!";
22 rsg.Close(); //关闭
23 }
24 catch (Exception ex) //捕获异常
25 {
26 this.label1.Text = ex.Message; //显示异常信息
27 }
28 }
29 }
30 }
【运行结果】选择“调试”|“启动调试”命令运行程序。
【代码解析】在本例中,要读取的值是上一个例子中写入的值。在第15行代码处首先打开要读取的注册键,然后在第16行用if语句和GetValue方法判断是否有数据读出。如果有读出,则在第18行中将它赋给文本框。
- 使用C#如何写入/读取注册表信息
- 使用C#如何写入/读取注册表信息
- C#读取注册表信息
- c# - 读取注册表信息
- C#读取注册表信息
- C#读取注册表信息
- C#读取和写入注册表
- C# 操作注册表 写入注册表 修改注册表 读取注册表
- C# 操作注册表 写入注册表 修改注册表 读取注册表
- C# 读取Windows注册表信息
- 如何使用PB修改以及读取注册表的信息
- C#如何读取注册表中的注册信息
- 关于C# 读取 写入 删除 注册表简单例子
- C#中实现注册表的写入和读取
- C#中如何获取注册表信息
- C#中如何获取注册表信息
- C#中如何获取注册表信息
- C#中如何获取注册表信息
- 良好编程习惯的养成
- 当下10大最热门的网站开发技术
- 数据库的事务隔离级别
- 《自然》评出年度图片:咳嗽瞬间 结晶公寓
- 年底啦 - 准备回家了,写下来做程序员 4 年多的总结 (转)
- 使用C#如何写入/读取注册表信息
- (转)人的集合论——移山之道
- switch语句
- 独立学院软件工程实践教学改革
- 写和抄
- Visual Studio 2008 每日提示(十七)
- 好用的视频格式转换工具:HandBrake
- MFC之subclass
- SQL Server 2005 Remote Access