当前位置:编程学习 > VB >>

VB操作注册表完整代码和详细注释

补充:装B者请绕行

追问:406384625@qq.com

谢谢

答案:在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") 禁用注册表编辑器
WSH.regWrite "HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem
DisableRegistryTools", 1, "REG_DWORD" '

注:如果写入的值1改为0,可解除对注册表编辑器的禁用。查看注册表编辑器是否可用
ret = WSH.RegRead("HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem
DisableRegistryTools") If ret = 1 Then WSH.Popup "注册表编辑器被禁用!"
Else WSH.Popup "可以使用注册表编辑器!"
End If 让程序自动运行
WSH.regWrite "HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun" + MyName, MyName, "REG_SZ" '

注:MyName是自动运行程序的文件名(含完整路径)

声明,以上是复制过来的,已经测试VB6.0 vb2008通过

你要的是代码吧,

至于注释,我想没有多少人会给你注释得太清楚,

因为代码就是文档

如果遇到不会的英文 弄一个词霸软件就行了,编程的人,没有词霸软件,混啥啊,除非你的英文好得不得了,

不过看你的水平,不像是英文好的人.

如果你认为不需要太详细的注释 ,能用就行,那就加我吧,

因为我是不会给你详细的注释,代码也不会放在这里,

我没有贴超过50行代码的习惯,还是喜欢长代码用MAIL 或是QQ发出去.

qq:254186917

第一,问题不详细,所以回答绝不会详细

第二,没有分,所以绝不会详细

第三,由于问题不详细,所以想回答都是问题

本来是想到这里拿点分的,可是看到上面的对话,LZ的态度确实是差的很,怪不得人家会那样说,蛮可怜你的行为。实话实说,帮理而已。。。。

上一个:vb CreateProcess函数可以用来做什么呢。
下一个:VB中的Like运算符的问题2

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,