详解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 相关文章推荐
用Javscript实现表单复选框的全选功能
May 25 Javascript
利用js对象弹出一个层
Mar 26 Javascript
JQuery文本框高亮显示插件代码
Apr 02 Javascript
简介JavaScript中的setTime()方法的使用
Jun 11 Javascript
举例说明JavaScript中的实例对象与原型对象
Mar 11 Javascript
javascript冒泡排序小结
Apr 10 Javascript
bootstrap3 兼容IE8浏览器!
May 02 Javascript
vue2.0移除或更改的一些东西(移除index key)
Aug 28 Javascript
JavaScript实现职责链模式概述
Jan 25 Javascript
浅谈vue中组件绑定事件时是否加.native
Nov 09 Javascript
vue倒计时刷新页面不会从头开始的解决方法
Mar 03 Javascript
vue离开当前页面触发的函数代码
Sep 01 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错误、异常处理机制(补充)
2012/05/07 PHP
php错误级别的设置方法
2013/06/17 PHP
PHP CURL获取cookies模拟登录的方法
2013/11/04 PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
2017/03/16 PHP
PHP常量define和const的区别详解
2019/05/18 PHP
jQuery 操作XML入门
2008/12/25 Javascript
JavaScript 对象模型 执行模型
2010/10/15 Javascript
幻灯片带网页设计中的20个奇妙应用示例小结
2012/05/27 Javascript
js一般方法改写成面向对象方法的无限级折叠菜单示例代码
2013/07/04 Javascript
基于jquery实现复选框全选,反选,全不选等功能
2015/10/16 Javascript
jquery获取form表单input元素值的简单实例
2016/05/30 Javascript
又一枚精彩的弹幕效果jQuery实现
2016/07/25 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
2016/12/07 Javascript
jquery实现图片平滑滚动详解
2017/03/22 jQuery
基于vue实现swipe轮播组件实例代码
2017/05/24 Javascript
bootstrap中selectpicker下拉框使用方法实例
2018/03/22 Javascript
NodeJS模块与ES6模块系统语法及注意点详解
2019/01/04 NodeJs
详解element-ui级联菜单(城市三级联动菜单)和回显问题
2019/10/02 Javascript
vue实现在线预览pdf文件和下载(pdf.js)
2019/11/26 Javascript
[02:46]解说DC:感谢430陪伴我们的DOTA2国际邀请赛岁月
2016/06/29 DOTA
列举Python中吸引人的一些特性
2015/04/09 Python
深入解析Python中的lambda表达式的用法
2015/08/28 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
python用插值法绘制平滑曲线
2021/02/19 Python
详解Python requests 超时和重试的方法
2018/12/18 Python
python selenium firefox使用详解
2019/02/26 Python
python利用JMeter测试Tornado的多线程
2020/01/12 Python
Python使用Selenium实现淘宝抢单的流程分析
2020/06/23 Python
详解Html5 Canvas画线有毛边解决方法
2018/03/01 HTML / CSS
GoDaddy英国:全球排名第一的域名注册商
2018/06/08 全球购物
俄罗斯运动、健康和美容产品在线商店:Lactomin.ru
2020/07/23 全球购物
财务部经理岗位职责
2014/02/03 职场文书
工作迟到检讨书
2014/02/21 职场文书
档案工作汇报材料
2014/08/21 职场文书
Django实现在线无水印抖音视频下载(附源码及地址)
2021/05/06 Python
SQL实现LeetCode(197.上升温度)
2021/08/07 MySQL