注册表(Registry,繁体中文版Windows操作系统称之为登录档案)是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。早在Windows 3.0推出OLE技术的时候,注册表就已经出现。随后推出的Windows NT是第一个从系统级别广泛使用注册表的操作系统。但是,从Microsoft Windows 95操作系统开始,注册表才真正成为Windows用户经常接触的内容,并在其后的操作系统中继续沿用。
命令行,输入regedit
Registry类,RegistryKey类提供了操作注册表的接口
注册表主键
RegistryKey类
RegistryKey类封装了对注册表的基本操作。包括读、写、删等操作的常用函数:
创建一个Key
C#private void btnCreateSubKey_Click(object sender, EventArgs e)
{
//使用CreateSubKey()在SOFTWARE下创建子项IDIOSOFT
RegistryKey hklm = Registry.LocalMachine;//HKEY_LOCAL_MACHINE
RegistryKey hkSoftWare = hklm.CreateSubKey(@"SOFTWARE\IDIOSOFT");
hklm.Close();
hkSoftWare.Close();
}
创建键值
C#private void btnCreateInfo_Click(object sender, EventArgs e)
{
//主要用到了SetValue(),表示在IDIOSOFT下创建名称为Name与No
RegistryKey hklm = Registry.LocalMachine;
//打开现有SubKey节点
RegistryKey key = hklm.OpenSubKey(@"SOFTWARE\IDIOSOFT", true);
key.SetValue("Name", "admin", RegistryValueKind.String);
key.SetValue("No", "10001", RegistryValueKind.String);
hklm.Close();
key.Close();
}
取得Value
C#private void btnReadInfo_Click(object sender, EventArgs e)
{
//主要用到了GetValue(),获得名称为"Name","No"的键值
RegistryKey hklm = Registry.LocalMachine;
RegistryKey hkSoftWare = hklm.OpenSubKey(@"SOFTWARE\IDIOSOFT", true);
string Name = hkSoftWare.GetValue("Name").ToString();
string No = hkSoftWare.GetValue("No").ToString();
hklm.Close();
hkSoftWare.Close();
}
删除一个键值
C#private void btnGetValue_Click_1(object sender, EventArgs e)
{
//主要用到了DeleteValue()
//,表示删除名称为"Name"的键值,第二个参数表示是否抛出异常
RegistryKey hklm = Registry.LocalMachine;
RegistryKey key = hklm.OpenSubKey(@"SOFTWARE\IDIOSOFT", true);
key.DeleteValue("Name", true);
hklm.Close();
key.Close();
}
删除一个键
C#private void btnDeleteKey_Click(object sender, EventArgs e)
{
//主要用到了DeleteSubKey(),删除IDIOSOFT项
RegistryKey hklm = Registry.LocalMachine;
//为true时,删除的注册表不存在时抛出异常;当为false时不抛出异常。
hklm.DeleteSubKey(@"SOFTWARE\IDIOSOFT", true);
hklm.Close();
}
本文作者:技术老小子
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!