VB注册表写入问题。高分

来源:百度知道 编辑:UC知道 时间:2024/05/03 01:18:46
我想将下列注册表项目写入进去,但不知道怎么用VB来操作。
我需要的是完整的代码。谢谢。如果回答能用再送20分。
1.根键位置:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Update
修改内容:
把二进制值“UpdateMode”改为“00 00 00 00”
2.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
修改内容:
在右边的窗口中新建一个DWORD值“NoRun”,并设值为“1”。
3.根键位置:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
修改内容:
在右边的窗口中新建一个二进制值“NoViewContextMenu”,并设值为“01 00 00 00”。
4.HKLM,"System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile","EnableFirewall",0x00010001,1- EnableFirewall = 0

在VB中,注册表的读写,可以用自身的SaveSetting、GetSetting函数,但它们读写注册表的位置有限;也可以使用API函数来实现注册表任意位置的读写,但使用起来又比较麻烦。其实,利用微软提供的Windows Script Host对象来操作注册表简单且方便得多。

要在程序中使用该对象,先要通过“工程引用”菜单项,把“Windows Script Host Object Modle”一项引用到工程中。如果没有,说明没有安装。可通过下面的方法安装:我的电脑→控制面板→添加/删除程序→安装WINDOWS→附件→Windows scripting host→确定。然后创建注册表操作对象变量WSH,代码为:Set WSH = CreateObject("WScript.Shell")。这样,就可以读写注册表了,其方法、格式和功能描述如下:

1、增加键值:WSH.regWrite "注册表完整路径键值名",键值,"键值类型"

注:regWrite方法的键值类型常用的有:REG_BINARY(新建或写入二进制值)、REG_DWORD(新建或写入DWORD值)、REG_SZ(新建或写入字符串值)。

2、获取键值:Ret=WSH.RegRead("注册表完整路径键值名")

注:RegRead方法的返回赋给变量Ret。

3、删除键值:WSH.RegDelete "注册表完整路径键值名"

注:RegDelete方法删除一个不存在的键值时要出错,防错方法参见以下代码。

4、弹出消息:WSH.Popup "消息内容" 注:Popup方法和MsgBox的功能差不多,但比MsgBox的功能弱。下面看看注册表操作的实例:

创建注册表操作变量
Dim WSH
Set WSH = CreateObject("WScript.Shell") 禁用注册表