C# 编程修改注册表 并立即生效
2010-12-29 15:07
495 查看
WinFrom 程序
近期遇到一个Sqlserver 2008评估版本到期的问题,解决这个问题的时候,需要在注册表 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft SQL Server/100/ConfigurationState 下修改 CommonFiles 值为 3 ,如果 在运行 输入 regedit.exe ,直接改的话,可以, 但如果是想自己写一个程序来实话这个操作的话,就得按下面说的去做了
首先,新建一个winform项目,窗口设计如下
在后台
首先 引入 Microsoft.Win32 命名空间
然后 在button_click 事件中,写如下代码
//得到 基项 HKEY_LOCAL_MACHINE
RegistryKey key = Registry.LocalMachine;
//根据路径 获取 ConFigurationState 下的所有子键
RegistryKey key1 = key.CreateSubKey(@"SOFTWARE/Microsoft/Microsoft SQL Server/100/ConfigurationState");
//在ConfigurationState下 创建或者设置键 CommonFiles 的值为1
key1.SetValue("CommonFiles", 1);
//关闭子键对象
key1.Close();
----------------------------------------------------------------------------------------------------------------------------------------
总结下:winForm 编程修改注册表 共分四部
1.引入 Microsoft.Win32 ,利用RegistryKey 创建注册表基项 对象
2.获取指定路径下所有的子键对象
3.创建或设置键值
4.关闭子键对象
修改了注册表,让其立即生效,有三种方法
1.重新启动计算机
2.注销
3.在 任务管理器 进程 里 先结束下 explorer.exe,然后再新建 explorer.exe ,因为注册表是随着explorer.exe进程(资源管理器)的启动而启动的。但是有的系统的任务管理器中,在结束了explorer.exe,文件下找不到 “新建任务”,于是小生就写了一个批处理,完成了这一操作。
新建一文本,输入如下代码后,保存为 shuaxin.bat
@echo off
taskkill /im explorer.exe /f
ping -n 2 127.0.0.1 >nul
start c:/windows/explorer.exe
这样,只需要 双击这个文件,就会 完成 explorer.exe进程的关闭和重启 的操作
近期遇到一个Sqlserver 2008评估版本到期的问题,解决这个问题的时候,需要在注册表 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft SQL Server/100/ConfigurationState 下修改 CommonFiles 值为 3 ,如果 在运行 输入 regedit.exe ,直接改的话,可以, 但如果是想自己写一个程序来实话这个操作的话,就得按下面说的去做了
首先,新建一个winform项目,窗口设计如下
在后台
首先 引入 Microsoft.Win32 命名空间
然后 在button_click 事件中,写如下代码
//得到 基项 HKEY_LOCAL_MACHINE
RegistryKey key = Registry.LocalMachine;
//根据路径 获取 ConFigurationState 下的所有子键
RegistryKey key1 = key.CreateSubKey(@"SOFTWARE/Microsoft/Microsoft SQL Server/100/ConfigurationState");
//在ConfigurationState下 创建或者设置键 CommonFiles 的值为1
key1.SetValue("CommonFiles", 1);
//关闭子键对象
key1.Close();
----------------------------------------------------------------------------------------------------------------------------------------
总结下:winForm 编程修改注册表 共分四部
1.引入 Microsoft.Win32 ,利用RegistryKey 创建注册表基项 对象
2.获取指定路径下所有的子键对象
3.创建或设置键值
4.关闭子键对象
修改了注册表,让其立即生效,有三种方法
1.重新启动计算机
2.注销
3.在 任务管理器 进程 里 先结束下 explorer.exe,然后再新建 explorer.exe ,因为注册表是随着explorer.exe进程(资源管理器)的启动而启动的。但是有的系统的任务管理器中,在结束了explorer.exe,文件下找不到 “新建任务”,于是小生就写了一个批处理,完成了这一操作。
新建一文本,输入如下代码后,保存为 shuaxin.bat
@echo off
taskkill /im explorer.exe /f
ping -n 2 127.0.0.1 >nul
start c:/windows/explorer.exe
这样,只需要 双击这个文件,就会 完成 explorer.exe进程的关闭和重启 的操作
相关文章推荐
- C# 使注册表修改后立即生效
- C# 注册表修改 立即生效 [转]
- C# 使注册表修改后立即生效
- 解决C#代码修改Windows注册表不生效的问题
- c# 修改注册表后不重启计算机生效
- 注册表修改之后,是不会生效的,需要重启,或者执行如下操作(但是有些按这样操作也还是不能立即生效,最保险的方式还是通过重启电脑来实现)
- 几个修改注册表后立即生效的刷新方法
- 让注册表修改立即生效的DIY批处理文件
- 修改注册表立即生效
- c# 修改注册表立即刷新
- C#修改注册表
- 如何修改注册表立刻生效
- C#设置自定义文件图标实现双击启动(修改注册表)
- 一个修改注册表后立即生效的源码. 跟组策略一样的效果
- centos 修改主机名立即生效和重启后也生效的方法
- 为什么修改hosts不立即生效?--浏览器DNS缓存机制分析
- Ubuntu修改环境变量立即生效(JDK)
- c#调用API更改桌面壁纸,同时修改注册表以避免电脑重启后壁纸还原
- 修改注册表后不重启计算机边生效
- 为什么修改hosts不立即生效?--浏览器DNS缓存机制分析