详解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中获取函数调用链所有参数的方法
May 07 Javascript
JS组件Bootstrap dropdown组件扩展hover事件
Apr 17 Javascript
BootStrap selectpicker
Jun 20 Javascript
Vue.js开发环境快速搭建教程
Mar 17 Javascript
Node.JS循环删除非空文件夹及子目录下的所有文件
Mar 12 Javascript
webpack+react+antd脚手架优化的方法
Apr 02 Javascript
jQuery点击页面其他部分隐藏下拉菜单功能
Nov 27 jQuery
vue+Element-ui实现分页效果实例代码详解
Dec 10 Javascript
vue的路由映射问题及解决方案
Oct 14 Javascript
24个解决实际问题的ES6代码片段(小结)
Feb 02 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
Apr 09 Javascript
JavaScript嵌入百度地图API的最详细方法
Apr 16 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
双料怀旧--SHARP GF515的维护、修理和简单调试
2021/03/02 无线电
实现 win2003 下 mysql 数据库每天自动备份
2006/12/06 PHP
php使用递归计算文件夹大小
2014/12/24 PHP
PHP读取XML格式文件的方法总结
2017/02/27 PHP
PHP切割汉字的常用方法实例总结
2019/04/27 PHP
innerText 使用示例
2014/01/23 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
详解微信小程序开发之下拉刷新 上拉加载
2016/11/24 Javascript
node通过express搭建自己的服务器
2017/09/30 Javascript
浅谈React中组件间抽象
2018/01/27 Javascript
详解JavaScript 浮点数运算的精度问题
2019/07/23 Javascript
深入理解Vue keep-alive及实践总结
2019/08/21 Javascript
Node.js学习教程之Module模块
2019/09/03 Javascript
Vuex实现数据共享的方法
2019/12/20 Javascript
javascript中的相等操作符(==与===区别)
2019/12/21 Javascript
[58:59]完美世界DOTA2联赛PWL S3 access vs CPG 第一场 12.13
2020/12/16 DOTA
python获取从命令行输入数字的方法
2015/04/29 Python
python读取word文档的方法
2015/05/09 Python
python运行时间的几种方法
2016/06/17 Python
Python实现类的创建与使用方法示例
2017/07/25 Python
opencv python 2D直方图的示例代码
2018/07/20 Python
Python-Tkinter Text输入内容在界面显示的实例
2019/07/12 Python
详谈tensorflow gfile文件的用法
2020/02/05 Python
解决Jupyter无法导入已安装的 module问题
2020/04/17 Python
windows10 pycharm下安装pyltp库和加载模型实现语义角色标注的示例代码
2020/05/07 Python
Python操作Excel把数据分给sheet
2020/05/20 Python
十月份红领巾广播稿
2014/01/22 职场文书
乌鸦喝水教学反思
2014/02/07 职场文书
物流管理毕业生自荐信范文
2014/03/15 职场文书
《蚕姑娘》教学反思
2014/04/15 职场文书
工程部部长岗位职责
2015/02/12 职场文书
2015年档案管理员工作总结
2015/05/13 职场文书
劳动仲裁撤诉申请书
2015/05/18 职场文书
Python机器学习之KNN近邻算法
2021/05/14 Python
SQL语法CONSTRAINT约束操作详情
2022/01/18 MySQL
instantclient客户端 连接oracle数据库
2022/04/26 Oracle