详解JavaScript修改注册表的方法


Posted in Javascript onJanuary 05, 2020

本实例主要通过WshShell 对象的相关方法实现。WshShell对象是WSH(WSH是Windows ing Host的缩写,内嵌于Windows操作系统中的脚本语言工作环境)的内建对象,主要负责程序的本地运行、处理注册表、创建快捷方式、获取系统文件夹信息及处理环境变量等工作。 WshShell 对象的相关方法如表11.1所示。

详解JavaScript修改注册表的方法

本实例中主要应用了 RegWrite方法,下面将对该方法进行详细介绍。

RegWrite方法用于在注册表中设置指定的键或值,其语法格式如下:

WshShell.RegWrite strName, anyValue, [strType]

参数说明

l     strName:用于指定注册表的键或值,若strName以一个反斜杠 (在 中为//) 结束,则该方法设置键,否则设置值。strName 参数必须以根键名“HKEY_CURRENT_USER”、 “HKEY_LOCAL_MACHINE”、“HKEY_CLASSES_ROOT”、“HKEY_USERS”或 “HKEY_CURRENT_CONFIG”开头。

l     AnyValue:用于指定注册表的键或值的值。当strType为REG_SZ或REG_EXPAND_SZ时,RegWrite方法自动将 anyValue转换为字符串。若strType为REG_DWORD,则anyValue被转换为整数。若strType为REG_BINARY,则 anyValue必须是一个整数。

l     StrType:用于指定注册表的键或值的数据类型。RegWrite方法支持的数据类型为REG_SZ、REG_EXPAND_SZ、 REG_DWORD和REG_BINARY。其他的数据类型被作为strType传递,RegWrite 返回 E_INVALIDARG。

实现过程

(1)编写自定义 函数PageSetup_del()和PageSetup_set(),用于实现清空页眉页脚和恢复页眉页脚的功能。具体代码如下:

< language=" "> 
 var HKEY_RootPath="HKEY_CURRENT_USER//Software//Microsoft//Internet Explorer//PageSetup//"; function PageSetup_del()
{  
 //清空页眉页脚
 try
{ 
 var WSc=new ActiveX ("W .Shell");  HKEY_Key="header"; 
 WSc.RegWrite(HKEY_RootPath+HKEY_Key,"");  HKEY_Key="footer"; 
 WSc.RegWrite(HKEY_RootPath+HKEY_Key,""); 
}catch(e){} 
} 
function PageSetup_set()
{ 
 //恢复页眉页脚 
 try{ 
 var WSc=new ActiveX ("W .Shell");  HKEY_Key="header"; 
 WSc.RegWrite(HKEY_RootPath+HKEY_Key,"&w&b页码,&p/&P");  
HKEY_Key="footer"; 
 WSc.RegWrite(HKEY_RootPath+HKEY_Key,"&u&b&d"); 
 }catch(e){} 
} 
</ >

(2)建立HTML的 标签,调用WebBrowser控件,代码如下:

< id="WebBrowser" classid="ClSID:8856F961-340A-11D0-A96B-00C04Fd705A2" width="0" height="0">

</ >

(3)创建“清空页眉页脚”和“恢复页眉页脚”的超级链接,并调用自定义函数PageSetup_del()和PageSetup_set()实现相应功能。代码如下:

<a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ="PageSetup_del()">清空页眉页脚</a>

<a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ="PageSetup_set()"> 恢复页眉页脚 </a>

(4)建立相关的打印超级链接,并调用WebBrowser控件的相应参数实现打印预览、打印等功能。代码如下:

<a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ="document.all.WebBrowser.Execwb(7,1)">打印预览</a>

 <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ="document.all.WebBrowser.Execwb(6,1)">打印</a>

 <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ="document.all.WebBrowser.Execwb(6,6)">直接打印</a>

 <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ="document.all.WebBrowser.Execwb(8,1)">页面设置</a>

总结

以上所述是小编给大家介绍的JavaScript修改注册表的方法,希望对大家有所帮助!

Javascript 相关文章推荐
不要使用jQuery触发原生事件的方法
Mar 03 Javascript
angularjs中的e2e测试实例
Dec 06 Javascript
jQuery插件简单实现方法
Jul 18 Javascript
深入分析jsonp协议原理
Sep 26 Javascript
js生成随机数(指定范围)的实例代码
Jul 10 Javascript
js代码实现下拉菜单【推荐】
Dec 15 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
Mar 13 Javascript
JS正则获取HTML元素的方法
Mar 31 Javascript
JavaScript全屏和退出全屏事件总结(附代码)
Aug 17 Javascript
VueRouter导航守卫用法详解
Dec 25 Javascript
简单介绍react redux的中间件的使用
Apr 06 Javascript
angular中的post请求处理示例详解
Jun 30 Javascript
js判断非127开头的IP地址的实例代码
Jan 05 #Javascript
Vue 解决路由过渡动画抖动问题(实例详解)
Jan 05 #Javascript
分享JS表单验证源码(带错误提示及密码等级)
Jan 05 #Javascript
jQuery 选择器用法基础入门示例
Jan 04 #jQuery
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
Jan 04 #Javascript
JavaScript 实现HTML DOM增删改查操作的常见方法详解
Jan 04 #Javascript
Angular8 实现table表格表头固定效果
Jan 03 #Javascript
You might like
让你的PHP同时支持GIF、png、JPEG
2006/10/09 PHP
PHP 采集获取指定网址的内容
2010/01/05 PHP
php使用百度翻译api示例分享
2014/01/31 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
2014/06/12 PHP
ThinkPHP框架安全实现分析
2016/03/14 PHP
让Laravel API永远返回JSON格式响应的方法示例
2018/09/05 PHP
PHP实现简单计算器小程序
2020/08/28 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
2020/02/21 PHP
javascript 写类方式之四
2009/07/05 Javascript
JavaScript 动态创建VML的方法
2009/10/14 Javascript
js post方式传递提交的实现代码
2010/05/31 Javascript
javascript复制对象使用说明
2011/06/28 Javascript
jquery垂直公告滚动实现代码
2013/12/08 Javascript
原生javascript实现DIV拖拽并计算重复面积
2015/01/02 Javascript
简单了解JavaScript操作XPath的一些基本方法
2016/06/03 Javascript
bootstrap输入框组件使用方法详解
2017/01/19 Javascript
Angular动态添加、删除输入框并计算值实例代码
2017/03/29 Javascript
原生JS实现的双色球功能示例
2018/02/02 Javascript
python中列表元素连接方法join用法实例
2015/04/07 Python
python实现决策树分类算法
2017/12/21 Python
Python读写docx文件的方法
2018/05/08 Python
Python3中的列表生成式、生成器与迭代器实例详解
2018/06/11 Python
对python For 循环的三种遍历方式解析
2019/02/01 Python
PyQt5实现从主窗口打开子窗口的方法
2019/06/19 Python
python设置环境变量的原因和方法
2019/06/24 Python
python等差数列求和公式前 100 项的和实例
2020/02/25 Python
Numpy 理解ndarray对象的示例代码
2020/04/03 Python
Python requests.post方法中data与json参数区别详解
2020/04/30 Python
工程造价专业大专生求职信
2013/10/06 职场文书
银行财务部实习生的自我鉴定
2013/11/27 职场文书
2014学雷锋活动总结
2014/03/09 职场文书
工人先锋号申报材料
2014/12/29 职场文书
综合办公室岗位职责
2015/04/11 职场文书
消防演习感想
2015/08/10 职场文书
银行大堂经理培训心得体会
2016/01/09 职场文书
python调试工具Birdseye的使用教程
2021/05/25 Python