详解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 相关文章推荐
JS判断页面加载状态以及添加遮罩和缓冲动画的代码
Oct 11 Javascript
require.js深入了解 require.js特性介绍
Sep 04 Javascript
JavaScript中判断整字类型最简洁的实现方法
Nov 08 Javascript
javascript与css3动画结合使用小结
Mar 11 Javascript
javascript白色简洁计算器
May 04 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
Jun 19 Javascript
js实现当前输入框高亮显示的方法
Aug 19 Javascript
深入理解Javascript中的valueOf与toString
Jan 04 Javascript
angularjs实现简单的购物车功能
Sep 21 Javascript
快速搭建React的环境步骤详解
Nov 06 Javascript
微信小程序实现运动步数排行功能(可删除)
Jul 05 Javascript
JS动态图片的实现方法完整示例
Jan 13 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 生成饼图 三维饼图
2009/09/28 PHP
php读取excel文件示例分享(更新修改excel)
2014/02/27 PHP
PHP实现的数独求解问题示例
2017/04/18 PHP
用js+xml自动生成表格的东西
2006/12/21 Javascript
JSON 编辑器实现代码
2009/12/06 Javascript
详解WordPress开发中get_current_screen()函数的使用
2016/01/11 Javascript
jquery中的常见问题及快速解决方法小结
2016/06/14 Javascript
微信小程序 SocketIO 实例讲解
2016/10/13 Javascript
xmlplus组件设计系列之路由(ViewStack)(7)
2017/05/02 Javascript
JS实现简易的图片拖拽排序实例代码
2017/06/09 Javascript
详解在vue-cli项目中安装node-sass
2017/06/21 Javascript
js下拉菜单生成器dropMenu使用方法详解
2017/08/01 Javascript
js数组去重的方法总结
2019/01/18 Javascript
JavaScript如何实现元素全排列实例代码
2019/05/14 Javascript
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
2020/08/20 NodeJs
python自动化测试实例解析
2014/09/28 Python
python itchat实现微信自动回复的示例代码
2017/08/14 Python
django实现登录时候输入密码错误5次锁定用户十分钟
2017/11/05 Python
python自定义线程池控制线程数量的示例
2019/02/22 Python
如何用Python做一个微信机器人自动拉群
2019/07/03 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
Python中包的用法及安装
2020/02/11 Python
python3爬虫中多线程进行解锁操作实例
2020/11/25 Python
SportsDirect.com新加坡:英国第一体育零售商
2019/03/30 全球购物
Tenstickers法国:墙贴和装饰贴纸
2019/08/26 全球购物
大学生职业规划论文
2014/01/11 职场文书
庆中秋节主题活动方案
2014/02/03 职场文书
小学母亲节活动方案
2014/03/14 职场文书
大学生志愿者活动总结
2014/06/27 职场文书
浪漫婚礼主题活动策划方案
2014/09/15 职场文书
欠条范文
2015/07/03 职场文书
python 开心网和豆瓣日记爬取的小爬虫
2021/05/29 Python
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL
Redis超详细讲解高可用主从复制基础与哨兵模式方案
2022/04/07 Redis
Go获取两个时区的时间差
2022/04/20 Golang
Oracle锁表解决方法的详细记录
2022/06/05 Oracle