我是靠谱客的博主 瘦瘦蚂蚁,最近开发中收集的这篇文章主要介绍VBS带你领略脚本语言的快乐!(注册表篇)用VBS操作注册表,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

用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 "HKCRxx",Default
//在根键HKEY_CLASSES_ROOT之下新建主键"xx",并置其默认值为空
  
WriteRegistry.RegWrite "HKCRxx","xxx"
//在根键HKEY_CLASSES_ROOT之下新建主键"xx",并置其默认值为xxx"
  
WriteRegistry.RegWrite "HKCRxxvalue1","string"
//在主键"xx"之下新建一个字符串型键值"value1",并置其初始值为"string"
  
WriteRegistry.RegWrite "HKCRxxvalue2",1,"REG_DWORD"
//在主键"xx"之下新建一个REG_DWORD型键值"value2",并置其初始值为1
  
WriteRegistry.RegWrite "HKCRxxvalue3",0Xff,"REG_BINARY"
//在主键"xx"之下新建一个二进制型键值"value3",并置其初始值为十六进制的"ff"

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

4.删除注册表(RegDelete)

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

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

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

结束语

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

最后

以上就是瘦瘦蚂蚁为你收集整理的VBS带你领略脚本语言的快乐!(注册表篇)用VBS操作注册表的全部内容,希望文章能够帮你解决VBS带你领略脚本语言的快乐!(注册表篇)用VBS操作注册表所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部