SQL Server2008的安装,SQLServer2008的安装......
2023-02-22 271 安装
注册表是windows系统中一个很重要的组成模块,在Windows中扮演着非常重要的角色;无论是电脑启动,硬件信息还是以些软件都用注册表来控制;那么我们改怎么操作注册表呢?今天我就带大家来了解了解注册表已经用Csharp程序来控制注册表,完成禁用和启用注册表的功能。
首先我们来看看不用程序如何打开注册表,来看看注册表到底长什么样子的?
打开注册表可以通过 打开运行(Windows徽标键 R),输入regedit进入注册表;我们可以看到注册表是由主键、子键、变量、值构成的一个庞大的数据集
我们要禁用注册表,需要找到注册表中关于禁止操作注册表的变量以及对于的值.根:HKEY_CURRENT_USER,路径:SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem,键:DisableRegistryTools,值:1(禁用)、0(启用);
我们可以通过直接在注册表中修改值来达到禁用注册表的效果,现在我们来实现禁用注册的功能,直接在注册表上修改DisableRegistryTools值为1;
修改好了后我们在从运行中打开注册表试试。看看现在会是什么情况?会发现运行下输入regedit之后弹出一个警告对话框
是不是手动完成了注册表禁用的功能呢,启动的话只需将DisableRegistryTools值改为0就可以了;现在我们来看看通过C#来设计注册表的禁用,程序图如下
创建一个window窗体应用的项目,添加连个按钮分别为btnBanRegedit(text为禁用注册表)、btnRunRegedit(text为启动注册表),
下面就来看看显示信息的lable值代码为:
label1.Text = "根:HKEY_CURRENT_USERrn"
@"禁用启用注册表路径:SoftwareMicrosoftWindowsCurrentVersionP
oliciesSystem"
"rn" "键值:DisableRegistryTools; 1禁用 0启用";
启动注册表的实现,添加按钮btnRunRegedit的单击事件
private void btnRunRegedit_Click(object sender, EventArgs e)
{
try
{
Microsoft.Win32.RegistryKey rk =
Microsoft.Win32.Registry.CurrentUser.CreateSubKey(
@"SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem ");
rk.SetValue("DisableRegistryTools", 0, Microsoft.Win32.Registry ValueKind.DWord);
MessageBox.Show("启用用注册表成功");
}
catch (Exception ex) { MessageBox.Show(ex.Message); }
}
禁用注册表的实现,添加按钮btnBanRegedit的单击事件:
private void btnBanRegedit_Click(object sender, EventArgs e)
{
try
{
Microsoft.Win32.RegistryKey rk = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem");
rk.SetValue("DisableRegistryTools", 1, Microsoft.Win32.RegistryValueKind.DWord);
MessageBox.Show("禁用注册表成功");
}
catch (Exception ex) { MessageBox.Show(ex.Message); }
}
基本代码设计完成,现在就来测试程序功能;当单击启用注册表会弹出启用注册表成功,现在我们在用前面的方法打开注册表试试,是不是发现又能打开注册表了呢
可以启动了注册表,现在来试试通过程序来禁用注册表的功能,单击启动会弹出禁用注册表成功;
在按照前面的方法发现无法打开注册表了,提示“注册表编辑以被管理员禁用”;是不是现在手动和程序都能控制了呢;有没有感觉很神奇呢,能帮到你请帮我投票哦
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
相关文章