这篇文章主要讲解了“Vbscript怎么写注册表”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vbscript怎么写注册表”吧! 通常我们只需要用到前两种方法,它们具体的使用方法如下:&n
这篇文章主要讲解了“Vbscript怎么写注册表”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vbscript怎么写注册表”吧!
通常我们只需要用到前两种方法,它们具体的使用方法如下:
一、RegWrite(写入或新建注册表数据)
* 新建子主键
语法为:Wshshell.RegWrite "子主键名"
例如,我们想新建一个子主键“HKEY_CURRENT_USERMyReg”,可使用如下的语句:
WshShell.RegWrite "HKCUMyReg"
说明:子主键名必须以反斜线 () 结束,若不小心忘记输入了这个(),则该方法返回的是键值,即表示你是想在 HKEY_CURRENT_USER下建立了一个名叫MyReg的键值了。这一点一定要十分注意!
注意引号里子主键的开头必须是下列根键名之一:
HKEY_CURRENT_USER(可简写为HKCU)、HKEY_LOCAL_MacHINE (HKLM)、HKEY_CLASSES_ROOT(HKCR)、 HKEY_USERS和HKEY_CURRENT_CONFIG
* 在子主键下建立新的键值(或改写已有的键值的数据)
语法为:WshShell.RegWrite "子主键名键值名","键值的数据","键值的类型"
例如我们想在子主键“HKEY_CURRENT_USERMyReg” 下新建一个字符串键值KeyValue,设置键值的数据为“str”,可使用如下的语句:
WshShell.RegWrite "HKCUMyRegKeyValue", "str"
(注:键值为字符串值,可省去"键值类型"的声明)
若所建的为二进制值或DWord值,数据为“1”,则还必须声明键值的类型,如下:
WshShell.RegWrite "HKCUMyRegKeyValue",1,"REG_BINARY"
WshShell.RegWrite "HKCUMyRegKeyValue",1,"REG_DWORD"
注意二进制值和DWORD值的数据不能加引号,而字符串值的数据则必须加引号。
二、RegDelete(删除注册表数据)
* 删除一个子主键
语法为:WshShell.RegDelete "子主键名"
例如,我们想删除子主键“HKEY_CURRENT_USERMyReg”,可使用如下的语句:
WshShell.RegDelete "HKCUMyReg"
* 删除子主键的某个键值
语法为:WshShell.RegDelete "子主键名键值名"
例如,我们想删除子主键“HKEY_CURRENT_USERMyReg” 的键值KeyValue,可使用如下的语句:
WshShell.RegDelete "HKCUMyRegKeyValue"
类似于RegWrite,有一个“”号表示的是删除子主键,没有“”则表示要删除的是子主键下的键值。
除了WshShell对象外,我们还必须了解一下WScirpt 对象。WScirpt对象即代表Scripting Engine,只要启动Engine就会自动产生此对象。WScript对象提供了创建和读取对象的方法。要使用WSH的其他对象(例如WshShell对象),就必须先用WScript对象的有关方法(CreateObject、GetObject)来创建和读取。
创建对象的语法如下:
WScript.CreateObject(strProgID)
其中strProgID就是我们所要创建的对象的标识名。
例如:我们要使用WshShell对象及其属性和方法,首先就要用WScript对象的方法CreateObject来创建一个WshShell对象,语句如下:
Set WSHShell = WScript.CreateObject("WScript.Shell")
举一个例子吧。大家都知道,如果你使用了“开始”菜单中的“运行”,windows将在列表框里记录下你“作案” 的痕迹。其实这些数据是记录在注册表中HKEY_CURRENT_USERSoftwareMicrosoftWindows
CurrentVersionExplorerRunMRU子键下,我们只要把这个子键删除,然后再重新建立,不就可以了吗?
现在我们可以来编写一个脚本了。以VBS为例,我们可以用记事本新建一个文件,然后输入(其中“//”后的文字为注释,不必输入):
//定义对象,要编辑注册表,我们需要使用WSHShell对象及其方法
Dim WSHShell
//对象的方法CreateObject来创建WSHShell对象
Set WSHShell = WScript.CreateObject("WScript.Shell")
//然后我们使用WSHShell对象的方法RegDelete来删除 HKEY_CURRENT_USERSoftwareMicrosoft
WindowsCurrentVersionExplorerRunMRU子键
WSHShell.RegDelete "HKCUSoftwareMicrosoft
WindowsCurrentVersionExplorerRunMRU"
//最后我们恢复该主键,并在该主键下恢复字符串值“MRUList”,设置其数据为空串
WSHShell.RegWrite "HKCUSoftwareMicrosoft
WindowsCurrentVersionExplorerRunMRUMRUList",""
程序到此结束,我们把文件另存为CleanMRU.vbs就可以了。现在我们就可以使用Scripting Engine来执行这个程序了。假设我们刚才把这个文件保存在D:TEMP里,我们就可以使用“开始”菜单的“运行”——Wcript.exe D:TEMPCleanMRU.vbs。重新启动,怎么样?“运行”里已经是空空如也了吧!
如果我们这样费尽心思地编了程序,最后还是得靠手工来运行,那还不如每次直接用注册表编辑器来操作呢!其实我们完全可以让它在每次开机时自动加载。这么一说,大家肯定都知道了——我们可以使用注册表编辑器,在“HKEY_LOCAL_MACHINESoftwareMicrosoftWindows
CurrentVersionRun”子主键下建立一个字符串值 “CleanMRU”,设置其数据为"Wcript.exe D:TEMPCleanMRU.vbs"。嘿嘿,这样才算大功告成。以后你每次开机,Windows就会自动执行该脚本以清除 “运行”中的历史记录了。
感谢各位的阅读,以上就是“Vbscript怎么写注册表”的内容了,经过本文的学习后,相信大家对Vbscript怎么写注册表这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!
--结束END--
本文标题: Vbscript怎么写注册表
本文链接: https://www.lsjlt.com/news/254625.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0