javascript操作注册表

要操作注册表需要通过ActiveX控件调用WScript.shell对象,通过该对象的一些方法来操作.

Wshshell对象:可以在本地运行程序、操纵注册表内容、创建快捷方式或访问系统文件夹.

先来看看如何创建它:

<script type="text/javascript">

var wsh=new ActiveXObject("Wscript.shell");

</script>

操作注册表需要使用 RegRead方法|RegWrite方法|RegDelete方法| 这三个方法.

下面就介绍下这三个方法:

QUOTE:

RegRead :   从注册表中返回项值或值名.

语法 : object.RegRead(strName);

object: 所创建的Wshshell对象.

strName: 表示所需的项名或值名的字符串值.

示例:

CODE:

<script type="text/javascript">

var wsh = new ActiveXObject("WScript.shell");

var reg=wsh.RegRead("HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Start Page");

alert(reg);

</script>

[Copy to clipboard]

在这里读取了IE 的默认地址 也就是StartPage里的值.

[attachment=354]

下面来认识RegWrite这个方法

QUOTE:

RegWrite:创建新项,将另一个值名添加到现有的项中(为其指派一个值),或更改现有值名的值;

语法bject.RegWrite(strName, anyValue [,strType])

object:所创建的Wshshell对象;

strName:表示要创建、添加或更改的项名值、名或值的字符串值。

anyValue: 要创建的新项名称、要添加到现有项中的值名或要指派给现有值名的新值。

strType:可选。表示值的数据类型的字符串值。

strType指定的四个可能的数据类型:

类型         说明                             形式

REG_SZ       字符串                           字符串

REG_DWORD     数字                             整数

REG_BINARY     二进制值                         整数

REG_EXPAND_SZ   可扩展的字符串(例如,"%windir%\\calc.exe") 字符串

示例:

如我现在想通过修该注册表的方法更改IE主页就可以通过这个方法.

CODE:

<script type="text/javascript">

var wsh = new ActiveXObject("WScript.shell");

var reg=wsh.RegWrite("HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Start Page","http:\\www.sun.com","REG_SZ");

alert(wsh.RegRead("HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Start Page"));

</script>

[Copy to clipboard]

你可以通过右键查看IE的主页你会发现已经变成了http:\\www.sun.com.

[attachment=355]

下面来介绍一下RegDelete方法:

QUOTE:

RegDelete:从注册表中删除项及其某个值。

语法:object.RegDelete(strName)

object:WshShell 对象。

strName:表示要删除的注册表项名或值名的字符串。

示例:大家一定发现我的IE工具栏有一副背景图片.

现在就通过这个方法将其删除。

CODE:

<script type="text/javascript">

var wsh = new ActiveXObject("WScript.shell");

var reg=wsh.RegDelete("HKCU\\Software\\Microsoft\\Internet Explorer\\Toolbar\\BackBitmap");

reg.popup("删除工具栏背景图成功");

</script>

[Copy to clipboard]

[attachment=356]

这里项名称都用了缩写,缩写如下

QUOTE:

根项名                 缩写

HKEY_CURRENT_USER         HKCU

HKEY_LOCAL_MACHINE         HKLM

HKEY_CLASSES_ROOT         HKCR

HKEY_USERS             HKEY_USERS

HKEY_CURRENT_CONFIG       HKEY_CURRENT_CONFIG

这些方法很简单,主要是需要你对注册表够熟悉.

好了,现在已经介绍完了 如果有兴趣可以自己写一个简易的优化大师^_^.

对了,最好使用HTA(HTML application),不然通过Web访问会出现安全提示。

另外Wshshell对象还有很多办法,在这里只介绍如何操作注册表


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章