详解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 相关文章推荐
InnerHtml和InnerText的区别分析
Mar 13 Javascript
javascript 验证日期的函数
Mar 18 Javascript
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
Apr 27 Javascript
JS实现两个大数(整数)相乘
Apr 28 Javascript
js遍历子节点子元素附属性及方法
Aug 19 Javascript
angular实现form验证实例代码
Jan 17 Javascript
js实现登录框鼠标拖拽效果
Mar 09 Javascript
jQuery实现所有验证通过方可提交的表单验证
Nov 21 jQuery
VUE2 前端实现 静态二级省市联动选择select的示例
Feb 09 Javascript
微信小程序自定义带价格显示日历效果
Dec 29 Javascript
微信小程序获取用户信息并保存登录状态详解
May 10 Javascript
详解JSON.parse和JSON.stringify用法
Feb 18 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
三国漫画《火凤燎原》宣布动画化PV放出 预计2020年播出
2020/03/08 国漫
实测在class的function中include的文件中非php的global全局环境
2013/07/15 PHP
PHP 下载文件时自动添加bom头的方法实例
2014/01/10 PHP
PHP自带函数给数字或字符串自动补齐位数
2014/07/29 PHP
PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
2016/09/22 PHP
详谈phpAdmin修改密码后拒绝访问的问题
2017/04/03 PHP
Node.js中AES加密和其它语言不一致问题解决办法
2014/03/10 Javascript
jquery带动画效果幻灯片特效代码
2015/08/27 Javascript
jQuery实现ctrl+enter(回车)提交表单
2015/10/19 Javascript
轻松掌握JavaScript中的Math object数学对象
2016/05/26 Javascript
JS中innerHTML和pasteHTML的区别实例分析
2016/06/22 Javascript
简单三步实现报表页面集成天气
2016/12/15 Javascript
js阻止移动端页面滚动的两种方法
2017/01/25 Javascript
JavaScript编写九九乘法表(两种任选)
2017/02/04 Javascript
微信小程序实现image组件图片自适应宽度比例显示的方法
2018/01/16 Javascript
cocos2dx+lua实现橡皮擦功能
2018/12/20 Javascript
解决Vue 移动端点击出现300毫秒延迟的问题
2020/07/21 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
[50:44]DOTA2-DPC中国联赛 正赛 SAG vs Dragon BO3 第二场 2月22日
2021/03/11 DOTA
Python中使用pprint函数进行格式化输出的教程
2015/04/07 Python
Python 对输入的数字进行排序的方法
2018/06/23 Python
对python中for、if、while的区别与比较方法
2018/06/25 Python
python实现五子棋小程序
2019/06/18 Python
Django查询优化及ajax编码格式原理解析
2020/03/25 Python
CSS3系列教程:背景图片(背景大小和多背景图) 应用说明
2012/12/19 HTML / CSS
美国领先的眼镜和太阳镜在线零售商:Glasses.com
2019/08/26 全球购物
政法大学毕业生自荐信范文
2014/01/01 职场文书
学校开学标语
2014/10/06 职场文书
欠条样本
2015/07/03 职场文书
如何写通讯稿
2015/07/22 职场文书
2016年共产党员个人承诺书
2016/03/24 职场文书
python实现的web监控系统
2021/04/27 Python
Java内存模型之happens-before概念详解
2021/06/13 Java/Android
一次MySQL启动导致的事故实战记录
2021/09/15 MySQL
HTML基础详解(下)
2021/10/16 HTML / CSS
Python requests用法和django后台处理详解
2022/03/19 Python