首页 > 电脑专区 > 电脑教程 >

C#操作注册表之禁用和启动注册表

来源:互联网 2023-02-21 18:08:12 355

注册表是windows系统中一个很重要的组成模块,在Windows中扮演着非常重要的角色;无论是电脑启动,硬件信息还是以些软件都用注册表来控制;那么我们改怎么操作注册表呢?今天我就带大家来了解了解注册表已经用Csharp程序来控制注册表,完成禁用和启用注册表的功能。5EG办公区 - 实用经验教程分享!

工具/原料

  • 电脑,Csharp程序编译器

方法/步骤

  • 1

    首先我们来看看不用程序如何打开注册表,来看看注册表到底长什么样子的?5EG办公区 - 实用经验教程分享!

    打开注册表可以通过 打开运行(Windows徽标键 R),输入regedit进入注册表;我们可以看到注册表是由主键、子键、变量、值构成的一个庞大的数据集5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 2

    我们要禁用注册表,需要找到注册表中关于禁止操作注册表的变量以及对于的值.根:HKEY_CURRENT_USER,路径:Software\Microsoft\Windows\CurrentVersion\Policies\System,键:DisableRegistryTools,值:1(禁用)、0(启用);5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 3

    我们可以通过直接在注册表中修改值来达到禁用注册表的效果,现在我们来实现禁用注册的功能,直接在注册表上修改DisableRegistryTools值为1;5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 4

    修改好了后我们在从运行中打开注册表试试。看看现在会是什么情况?会发现运行下输入regedit之后弹出一个警告对话框5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 5

    是不是手动完成了注册表禁用的功能呢,启动的话只需将DisableRegistryTools值改为0就可以了;现在我们来看看通过C#来设计注册表的禁用,程序图如下5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 6

    创建一个window窗体应用的项目,添加连个按钮分别为btnBanRegedit(text为禁用注册表)、btnRunRegedit(text为启动注册表),5EG办公区 - 实用经验教程分享!

    下面就来看看显示信息的lable值代码为:5EG办公区 - 实用经验教程分享!

    label1.Text = "根:HKEY_CURRENT_USER\r\n"5EG办公区 - 实用经验教程分享!

    @"禁用启用注册表路径:Software\Microsoft\Windows\CurrentVersion\P5EG办公区 - 实用经验教程分享!

    olicies\System" 5EG办公区 - 实用经验教程分享!

    "\r\n" "键值:DisableRegistryTools; 1禁用 0启用";5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 7

    启动注册表的实现,添加按钮btnRunRegedit的单击事件5EG办公区 - 实用经验教程分享!

    5EG办公区 - 实用经验教程分享!

    private void btnRunRegedit_Click(object sender, EventArgs e) 5EG办公区 - 实用经验教程分享!

    { 5EG办公区 - 实用经验教程分享!

    try 5EG办公区 - 实用经验教程分享!

    { 5EG办公区 - 实用经验教程分享!

    Microsoft.Win32.RegistryKey rk =5EG办公区 - 实用经验教程分享!

    Microsoft.Win32.Registry.CurrentUser.CreateSubKey( 5EG办公区 - 实用经验教程分享!

    @"Software\Microsoft\Windows\CurrentVersion\Policies\System "); 5EG办公区 - 实用经验教程分享!

    rk.SetValue("DisableRegistryTools", 0, Microsoft.Win32.Registry ValueKind.DWord);5EG办公区 - 实用经验教程分享!

    MessageBox.Show("启用用注册表成功"); 5EG办公区 - 实用经验教程分享!

    } 5EG办公区 - 实用经验教程分享!

    catch (Exception ex) { MessageBox.Show(ex.Message); }5EG办公区 - 实用经验教程分享!

    }5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 8

    禁用注册表的实现,添加按钮btnBanRegedit的单击事件:5EG办公区 - 实用经验教程分享!

    5EG办公区 - 实用经验教程分享!

    private void btnBanRegedit_Click(object sender, EventArgs e)5EG办公区 - 实用经验教程分享!

    {5EG办公区 - 实用经验教程分享!

    try 5EG办公区 - 实用经验教程分享!

    { 5EG办公区 - 实用经验教程分享!

    Microsoft.Win32.RegistryKey rk = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Policies\System");5EG办公区 - 实用经验教程分享!

    rk.SetValue("DisableRegistryTools", 1, Microsoft.Win32.RegistryValueKind.DWord); 5EG办公区 - 实用经验教程分享!

    MessageBox.Show("禁用注册表成功"); 5EG办公区 - 实用经验教程分享!

    } 5EG办公区 - 实用经验教程分享!

    catch (Exception ex) { MessageBox.Show(ex.Message); } 5EG办公区 - 实用经验教程分享!

    }5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 9

    基本代码设计完成,现在就来测试程序功能;当单击启用注册表会弹出启用注册表成功,现在我们在用前面的方法打开注册表试试,是不是发现又能打开注册表了呢5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 10

    可以启动了注册表,现在来试试通过程序来禁用注册表的功能,单击启动会弹出禁用注册表成功;5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 10本页面未经许可获取自百度经验
  • 11

    在按照前面的方法发现无法打开注册表了,提示“注册表编辑以被管理员禁用”;是不是现在手动和程序都能控制了呢;有没有感觉很神奇呢,能帮到你请帮我投票哦5EG办公区 - 实用经验教程分享!

    C#操作注册表之禁用和启动注册表5EG办公区 - 实用经验教程分享!

  • 注意事项

    • 操作注册表需谨慎,最好提前备份

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!5EG办公区 - 实用经验教程分享!


    标签: 操作系统注册操作启动

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码