修改注册表信息
由于注册表中的信息十分重要,因此一般不要对其进行写的操作,也可能是因为这个原因导致在.net中没有提供直接修改注册表的方法,而是提供了一个危险系数相对较低的SetValue方法,通过这个方法,可以修改键值。
在使用SetValue方法的时候,若检测到指定的键名不存在,就会创建一个新的键值对。


完整示例代码:
using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace AlterRegedit
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//创建RegistryKey实例
RegistryKey rkMain = Registry.CurrentUser;
//使用OpenSubKey方法打开HKEY_CURRENT_USER\Software项
RegistryKey rkSoftware = rkMain.OpenSubKey("Software", true);
//使用OpenSubKey方法打开“学习”子项
RegistryKey rkMR = rkSoftware.OpenSubKey("明日", true);
//使用OpenSubKey方法打开“学习”项下的“C#”子项
RegistryKey rkEast = rkMR.OpenSubKey("C#", true);
//然后使用SetValue方法修改“指定键”的值
rkEast.SetValue("East", "MRKJ_ZHD");
MessageBox.Show("修改成功");
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}