龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

一步一步教你用JS和INF编辑注册表

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
JScript小知识:JScript是一种解释型的、基于对象的脚本语言。尽管与C++这样成熟的面向对象的语言相比,JScript的功能要弱一些,但对于它的预期用途而言,JScript的功能已经足够大了。

  JScript小知识:JScript是一种解释型的、基于对象的脚本语言。尽管与C++这样成熟的面向对象的语言相比,JScript的功能要弱一些,但对于它的预期用途而言,JScript的功能已经足够大了。JScript程序是语句的集合,一条Jscript语句相当于英语中的一个完整句。Jscript语句将表达式组合起来,完成一个任务。一条语句由一个或多个表达式、要害字或者运算符(符号)组成。典型地,一条语句写一行,尽管一条语句可以超过两行或更多行。两条或更多条语句也可以写在同一行上,语句之间用分号“;”隔开。通常,每一新行开始一条新语句,分号(;)是JScript语句的终止字符。

  
      一、用JS编辑注册表

  
      事实上,JS的主体和VBS文件差不多,就是结构有一点不同而已!所以我们就不多说了。下面是个用JS编辑注册表的简单例子:

  
  var WSHShell=WScript.CreateObject("WScript.Shell");
  WSHShell.Popup ("这是一个用JS编辑注册表的例子By yjj");
  WSHShell.RegWrite("HKLMExample_JS", "String Key_JS");
  WSHShell.RegWrite("HKLMExample_JS", "Reginfo By yjj");
  WSHShell.RegWrite("HKLMExample_JSValue","String Key For JS");
  WSHShell.RegWrite("HKLMExample_JSBinary", 1,"REG_BINARY" );
  WSHShell.RegWrite("HKLMExample_JSDWord", 1,"REG_DWORD" );
  WSHShell.RegWrite("HKLMExample_JSNext","NewData");
  WSHShell.Run("Regedit");

  
      上面这些代码中第一句是定义对象,第二句用来显示一条信息,后面几行写注册表,最后一行运行注册表编辑器。大家可以看出用JS对键值进行操作时要用两斜杠“”,并且要用“;”表示结束。一般只要能注重这两点,就没有问题了。

  
      再来看一个用JS编辑注册表的例子。大家知道,浏览某些恶意网页会把我们的注册表给禁用了,由于无法导入注册表文件,造成我们没有办法使用注册表编辑器。把下面的代码存为以js为后缀名的任意文件,然后双击就可以将其导入注册表中,从而给注册表解锁:

  
  VAR WSHShell=WSCRIPT.CREATOBJEt("WSCRIPT.SHELL");
  WSHShell.Popup("这是一个用JS编辑注册表的例子By YJJ");
  //下面的例子要在注册表中建立一个Dword值,名为DisableRegistryTools,值为0,注重要说明值的类型!
  WSHShell.RegWrite("HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciessystem
  DisableRegistryTools", 0,"reg_dword");

  
      试试看,是不是很神奇啊?以上说的都是添加键值,假如要删除某些键值该怎么办呢?很简单,将“WSHShell.RegWrite”改成“WSHShell.RegDelete”就可以了。

  
      注重:JScript不是其他语言的精简版,也不是任何事物的简化。不过,它有其局限性。例如,您不能使用该语言来编写独立运行的应用程序,并且没有对读写文件的内置支持。此外,JScript脚本只能在某个解释器或“宿主”上运行,如ASP、Internet浏览器或者Windows脚本宿主。

      二、用INF文件编辑注册表

      INF小知识:INF是用于安装驱动程序的文件,它是文本格式的,记录着驱动程序的所有相关资料。随便打开一个INF文件可以看到许多项,每一项都有特定的含义,比如从“Version”一项就可以看出支持的Windows版本是什么:Win9X系列的代号就是CHICAGO,Win2000/XP的代号就是Windows NT。

      让我们来举个例子。首先打开记事本,然后在里面输入下面内容,然后保存为addreg.inf。

  [Version]
  Signature="$CHICAGO$"

  [DefaultInstall]
  Addreg=Add

  [Add]
  HKLM,"SOFTWARE★★小军★★",,%REG_SZ%,★★小军向你表示祝贺★★!
  HKLM,"SOFTWARE★★小军★★",SZ字符串,%REG_SZ%,Congratulations!
  HKLM,"SOFTWARE★★小军★★",Dword双字节,%REG_Dword%,1
  HKLM,"SOFTWARE★★小军★★",Binary二进值,%REG_BINARY%,00,00,00,00,10,11,00,00
  HKLM,"SOFTWARE★★小军★★测试";添加“测试”这个下级子键

  
  

精彩图集

赞助商链接