VBS带你领略脚本语言的快乐!(注册表篇)

您所在的位置:网站首页 reg修改注册表键值 VBS带你领略脚本语言的快乐!(注册表篇)

VBS带你领略脚本语言的快乐!(注册表篇)

2024-07-05 11:07| 来源: 网络整理| 查看: 265

用VBS操作注册表 前言

   先前我们解了了VBS入门知识和VBS基础知识,但那些都比较low,我相信在这高级语言统治的信息社会,转过头来学脚本的人,目的肯定不单纯。就像我当年就是因为它可以做一些恶搞脚本才去了解这款语言的。        回想起高中时,我的脚本在学校机房里人人都闻风丧胆的样子,最后搞得只要是我发的文件,没几个人敢打开(偷笑)。        那怎么能让VBS做到一些平常我们做不到的,让人感到不简单的事呢?那就是修改注册表。啥?不知道注册表是什么?没事,接下来让你全面了解。    

一、注册表 啥是注册表

   注册表是Windows的一个非常重要非常重要的数据库,里面储存着系统信息和程序信息。比如某些杀毒软件(这里只针对一些流氓软件),他们就会擅自修改你的注册表,让你无论怎样都卸载不干净,甚至有些时候他的操作权限比你的还要大(曾深受其害)。    

查看你的注册表

   那注册表在哪呢?我们不用刻意去找,按“win+R”快捷键,打开“运行”窗口,输入“regedit”,回车,就会打开注册表编辑器。     在这里插入图片描述

简单了解一哈这几个主键:

   1. HKEY_CLASSES_ROOT(根主键):包含了所有已装载的应用程序、OLE(对象连接与嵌入)或DDE(动态数据交换)信息,以及所有文件类型信息。    2. HKEY_CURRENT_USER(用户主键):记录了有关登录计算机网络的特定用户的设置和配置信息。    3. HKEY_LOCAL_MACHINE(机器主键):存储了Windows开始运行的全部信息。    4. HKEY_USERS(私人用户主键):描述了所有同当前计算机联网的用户简表。    5. HKEY_CURRENT_CONFIG(当前配置主键):该主键包括字体、打印机和当前系统的有关信息。    

二、操作注册表 1. 创建对象

   要想用VBS操作注册表,就要先创建一个能和系统交流(谈恋爱)的对象,再在这个对象里使用各种方法对注册表进行操作。        当然,你问我没对象怎么办呀?没对象咱们就创建一个对象,我们程序猿最不缺的就是对象!接下来就由我给你们创建一个对象:

dim MyObject set MyObject= wscript.Createobject("wscript.shell")

   以上代码就是创建了一个能和系统交流的对象,对象名是“MyObject”。        既然我们现在有了可以与系统交流的对象了,那我们该怎么和系统交流呢?接下来就由本情圣交给你们三种和它交流的方法:    1. 读注册表:regread    2. 写注册表:regwrite    3.删除数据表:regdelete        光有方法还不行,我们的方法还需要必不可少的参数,该参数包括注册表的根键、主键路径、键值。    1. 根键: 它有两种表现形式,一种是用他的键名来表示,比如HKEY_CLASSES_ROOT,或是用它名字的缩写,比如HKEY_CLASSES_ROOT的缩写是HKCR,缩写的格式就是最前面的HK加上后面单词的首字母缩写。    2. 主键路径: 就是你要修改的键在注册表中的位置,各个键之间用“\”分隔。    3. 键值: 就是你要修改的那个东西。    

2.读注册表(RegRead):

   读注册表主要是用来获取注册表中键和键值数据。

dim ReadRegistry dim Read_Data set ReadRegistry=WScript.CreateObject("WScript.Shell") Read_Data=ReadRegistry.RegRead("你要读取键的参数") msgbox(Read_Data) 3.写注册表(RegWrite)(重要)

   在我们操作注册表时,你会发现有些键默认是不存在的,但我们想要修改计算机的这部分功能,就必须要修改这个不存在的键,这时我们就可以用“regwrite”方法创造这个键。        “regwrite”方法可以在注册表中新建主键,并赋给它们一个初始值,还可以对注册表中已经存在的主键或键值进行数据的修改,因此写操作的参数结构就比其他操作要复杂一些,它不仅要路径参数,还要一个初始值和类型参数。        参数类型有三种:    1. REG_SZ:字符型,该类型为缺省类型。    2. REG_DWORD:双字节型。    3. REG_BINARY:二进制型。    

Dim WriteRegistry Set WriteRegistry=WScript.CreateObject("WScript.Shell")   WriteRegistry.RegWrite "HKCR\xx\",Default //在根键HKEY_CLASSES_ROOT之下新建主键"xx",并置其默认值为空   WriteRegistry.RegWrite "HKCR\xx\","xxx" //在根键HKEY_CLASSES_ROOT之下新建主键"xx",并置其默认值为xxx"   WriteRegistry.RegWrite "HKCR\xx\value1","string" //在主键"xx"之下新建一个字符串型键值"value1",并置其初始值为"string"   WriteRegistry.RegWrite "HKCR\xx\value2",1,"REG_DWORD" //在主键"xx"之下新建一个REG_DWORD型键值"value2",并置其初始值为1   WriteRegistry.RegWrite "HKCR\xx\value3",0Xff,"REG_BINARY" //在主键"xx"之下新建一个二进制型键值"value3",并置其初始值为十六进制的"ff"

   看不懂没关系,博主刚开始的时候也看不懂,我们要循序渐进,多码几次自然就明白了。

4.删除注册表(RegDelete)

   有些键你看着不顺眼,想尽办法就是要让他从你电脑上消失,比如某些流氓软件写在你电脑上的残留信息,这时候就需要我们进行注册表的删除操作,该操作极其危险,无论什么主键和键值,无论他们对电脑有多么重要,它都能流畅的帮你把他弄没喽,所以在使用时务必小心!        删除操作比起前两个就简单多了。

Dim DeleteRegistry Set DeleteRegistry=WScript.CreateObject("WScript.Shell") DeleteRegistry.RegRead("HKCR\xx\value") //删除"xx"主键之下的"value"键值 DeleteRegistry.RegRead("HKCR\xx\") //删除根键HKEY_CLASSES_ROOT之下的"xx"主键

   这里要警告大家一点:不要胡乱修改或删除注册表,如果一不小心把系统信息或程序信息破坏掉,可能会导致程序或系统的崩溃,如果非要这么干,请随时做好备份注册表或重装系统的准备!    

结束语

   到此,VBS对注册表的操作就结束了,东西不多,看着也很简单,但用起来却很爽,这也是我们实战时必不可少的操作。前几篇做足了铺垫,接下来的实战篇将为大家展示VBS真正的威力。    



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3