详解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玩一玩WSH吧
Feb 23 Javascript
JS刷新当前页面的几种方法总结
Dec 24 Javascript
js清空表单数据的两种方式(遍历+reset)
Jul 18 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
Jan 02 Javascript
JavaScript常用的弹出广告及背投广告实现方法
Feb 06 Javascript
javascript中checkbox使用方法实例演示
Nov 19 Javascript
JavaScript适配器模式详解
Oct 19 Javascript
mockjs,json-server一起搭建前端通用的数据模拟框架教程
Dec 18 Javascript
微信小程序外卖选购页实现切换分类与数量加减功能案例
Jan 15 Javascript
JS中的算法与数据结构之集合(Set)实例详解
Aug 20 Javascript
jQuery 淡入/淡出效果函数用法分析
May 19 jQuery
JavaScript实现页面动态验证码的实现示例
Mar 23 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/08/07 PHP
PHP 第二节 数据类型之数值型
2012/04/28 PHP
调试PHP程序的多种方法介绍
2014/11/06 PHP
php日志函数error_log用法实例分析
2019/09/23 PHP
PHP单元测试配置与使用方法详解
2019/12/27 PHP
脚本吧 - 幻宇工作室用到js,超强推荐expand.js
2006/12/23 Javascript
JS类的封装及实现代码
2009/12/02 Javascript
php对mongodb的扩展(小试牛刀)
2012/11/11 Javascript
JS文本框不能输入空格验证方法
2013/03/19 Javascript
浅析JS运动
2015/12/28 Javascript
Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统
2016/05/27 Javascript
老生常谈JQuery data方法的使用
2016/09/09 Javascript
JavaScript中关于iframe滚动条的去除和保留
2016/11/17 Javascript
Angularjs通过指令监听ng-repeat渲染完成后执行脚本的方法
2016/12/31 Javascript
js实现自动图片轮播代码
2017/03/22 Javascript
Mpvue中使用Vant Weapp组件库的方法步骤
2019/05/16 Javascript
vue实现网络图片瀑布流 + 下拉刷新 + 上拉加载更多(步骤详解)
2020/01/14 Javascript
原生JavaScript实现随机点名表
2021/01/14 Javascript
python 判断一个进程是否存在
2009/04/09 Python
利用python numpy+matplotlib绘制股票k线图的方法
2019/06/26 Python
Python socket实现的文件下载器功能示例
2019/11/15 Python
快速解决jupyter notebook启动需要密码的问题
2020/04/21 Python
python批量生成条形码的示例
2020/10/10 Python
html5弹跳球示例代码
2013/07/23 HTML / CSS
深入浅析HTML5中的article和section的区别
2018/05/15 HTML / CSS
很酷的小工具和电子产品商城:GearBest
2016/11/19 全球购物
英国打印机墨水和碳粉商店:Printerinks
2017/06/30 全球购物
EJB的角色和三个对象
2015/12/31 面试题
教师自我鉴定
2013/12/13 职场文书
文明城市标语
2014/06/16 职场文书
服务宗旨标语
2014/07/01 职场文书
上课不认真检讨书
2014/09/17 职场文书
法学专业毕业实习自我鉴定2014
2014/09/27 职场文书
《唯一的听众》教学反思
2016/02/18 职场文书
MySQL 分页查询的优化技巧
2021/05/12 MySQL
Mysql 数据库中的 redo log 和 binlog 写入策略
2022/04/26 MySQL