1、首先读取注册表中本地软件安装的位置,如果未安装则无就跳转到下载页面。

2、启动软件,关闭页面。

3、如报错提示。

<SCRIPT language=javascript>  
<!--   
function killErrors(){  
alert("请将您浏览器Internet选项中的“对没有标记为安全的ActiveX控件进行初始化和脚本运行”设置为“启用”!/n/n然后刷新本页登陆!");  
return true;}   
window.onerror = killErrors;  
var WshNetwork = new ActiveXObject("WScript.Network");  
ComputerName=WshNetwork.ComputerName+"/"+WshNetwork.UserName;  
alert(ComputerName);  
//读注册表中的计算机名 
var obj = new ActiveXObject("WScript.Shell"); 
var str="HKLM//System//CurrentControlSet//Control//ComputerName//ComputerName//ComputerName"; 
alert(obj.RegRead(str)); 
//写入启动项 
//str2="HKEY_CURRENT_USER//Software//Microsoft//Windows//CurrentVersion//Run//eip"; 
//obj.RegWrite(str2,"C://eip//eip.lnk","REG_SZ"); 
//alert(obj.RegRead(str2));

//禁用任务管理器1,否0 
str3="HKEY_CURRENT_USER//Software//Microsoft//Windows//CurrentVersion//Policies//System//DisableTaskMgr" 
obj.RegWrite(str3,"0","REG_DWORD"); 
alert(obj.RegRead(str3));//-->   
</SCRIPT>

var str1="HKEY_LOCAL_MACHINE\\SOFTWARE\\Notesystem1.0\\Location";

//alert(obj.RegRead(str1));

var link = "file:///"+obj.RegRead(str1)+"NoteSystemV1.0.exe";

link = link.replace(/\\/g,"/");

var regS = new RegExp(" ","gi");

link = link.replace(regS,"%20")

Run(link,'File');

替换第一个匹配的字符串,相信这个大家都已经很精通了。在这里就不举例子了。

1.替换所有要替换字符 零度科技

<script type="text/javascript">
var str = "$Hello World!$Hello World!$Hello World!";
//把所有的“Hello World!”替换为“Welcome you!”。“/g”是替换全部。
alert(str.replace(/Hello World!/g,"Welcome you!"));
</script>

2.替换所有要替换的特殊字符。

<script type="text/javascript">
var str = "$Hello World!$Hello World!$Hello World!";
//利用正则表达式把所有的“$”替换为“#”。“$”为特殊字符,所以前面要加“\\”。
var regS = new RegExp("\\$","g");
alert(str.replace(regS,"#"));
</script>
如下为简单示例:
<script language="javascript">
var strM = "javascript is a good script language";
//在此我想将字母a替换成字母A
alert(strM.replace("a","A"));
</script>
只能替换第一个“a”字母 
<script language="javascript">
var strM = "javascript is a good script language";
//在此将字母a全部替换成字母A
alert(strM.replace(/a/g,"A"));
</script>
可以替换所有“a”字母
javascript字符串替换所有要替换字符
javascript替换函数使用正则表达式
//将字母i全部替换成5
<script language="javascript">
var txt = "sjfisjfisdjfijsidfjioalfjewofjjgs";
alert(txt .replace(/i/g,"5"));
</script>
//只将第一个字母i替换成5
<script language="javascript">
var txt = "sjfisjfisdjfijsidfjioalfjewofjjgs";
alert(txt .replace("i","5"));
</script>
<script language="JavaScript">
<!--
var s = "testtest" ;

//第二个参数中的 g 表示全部匹配,i表示忽略大小写
var regS = new RegExp("test","gi");

alert(s.replace("test","Hello")); //只替换一个
alert(s.replace(regS,"Hello")); //全部替换
//-->
</script>

用javascript技术读取注册表中软件安装位置并启动本地软件的更多相关文章

  1. NSIS:在注册表中记录安装路径以便重装或升级时读取

    原文 NSIS:在注册表中记录安装路径以便重装或升级时读取 在NSIS中,这个功能是非常有用的,可以避免用户把程序安装到多个位置的尴尬. 第1步:在“安装目录选择页面”前面加入以下代码: 1 !def ...

  2. C#读取注册表中二进制类型的值(REG_BINARY)

    如需要读取注册表中某个键的值, 例如读取DriverDesc对应的值,一般情况下为String类型,读取代码如下: RegistryKey driverKey = Registry.LocalMach ...

  3. UAC在注册表中的对应位置

    UAC在注册表中的对应位置 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/System 相关键值设置: U ...

  4. WinCE下读取注册表获得SD路径

    WinCE下读取注册表获得SD路径 [要点]WinCE注册表中[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SDMemory\] 下键Folde ...

  5. inno setup读取注册表遇到的一个坑

    一.背景 目前,公司针对PR开发的一个插件需要发布到64位系统上.该插件包括一个prm格式的文件和若干个DLL文件.其中,prm文件需要复制到PR公共插件目录下,DLL需要复制到Windows系统目录 ...

  6. C#读取注册表信息

    注册表是视窗系统的一个核心的数据库,在这个数据库中存放中与系统相关的各种参数,这些参数直接控制中系统的启动.硬件的驱动程序安装信息以及在视窗系统上运行的各种应用程序的注册信息等.这就意味着,如果注册表 ...

  7. java如何操作注册表(Preferences类)(在windows的注册表中保存、读取)

    我们经常需要将我们的程序运行中的一些信息(比如在选项对话框中的设置)记录下来,以做便再次运行的时候不用再重写填写这些数据.这对改善软件的人机可用性方面是很有用的.比如:数据库监控.日志工具,JDBMo ...

  8. JS 通过注册表调用启动本地软件

    (关键点:所有软件安装的注册表路径是不会变化的,这个注册表路径需沟通软件商家获取或者通过自己安装在注册表中查找得到) // 调用 注册表编辑类 方法 function run_jxpgj(){//进项 ...

  9. Java Windows下读取注册表的工具类

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...

随机推荐

  1. Android provider中使用sqlite内存数据库

    sqlite是支持内存数据库的,在Android中,我们可以通过provider实现内存数据库操作.内存数据库的优点,访问速度快,但在连接关闭后,数据库自动消失(在android中的表现是,provi ...

  2. es5||es6 - array

    导航目录 /** * javascript - array * * ES5: * join() * push() * pop() * shift() * unshift() * sort() * re ...

  3. QtGui.QCalendarWidget

    A QtGui.QCalendarWidget provides a monthly based calendar widget. It allows a user to select a date ...

  4. UIScrollView 循环滚动,代码超简单

    如今非常多应用里面多多少少都用到了循环滚动,要么是图片.要么是view,或者是其它,我总结一下,写了个demo分享给大家. 先看代码之后在讲原理: 1.创建一个空的项目(这个我就不多说了). 2.加入 ...

  5. ISO镜像安装UbuntuKylin 13.04 64位,启动菜单制作实例

    1.将光盘镜像中的vmlinuz.efi.initrd.lz,和镜像本身(ubuntu....iso) 三个文件复制到U盘根目录下.如果下面的方法没成功启动,你可能要把U盘格式化为USB-HDD FA ...

  6. 总结js(Iframe、window.open、window.showModalDialog)父窗口与子窗口之间的操作

    http://hi.baidu.com/yashua839/blog/item/131fdb2fe547ef221f3089af.html一.Iframe 篇 //&&&&am ...

  7. 移动UI设计中需要避免的四种常见用户体验误区

    2012年移动应用的下载量超过300 亿,可是智能手机用户平均每周会使用的应用数却大概只有15个.更糟的是,Localytics 的研究表明,大概有22%的应用是见光死,用过一次之后就被束之高阁.既然 ...

  8. Python操作redis字符串(String)详解 (三)

    # -*- coding: utf-8 -*- import redis #这个redis不能用,请根据自己的需要修改 r =redis.Redis(host=") 1.SET 命令用于设置 ...

  9. Linux 用 shell 脚本 批量 导入 csv 文件 到 mysql 数据库

    前提: 每个csv文件第一行为字段名 创建的数据库字段名同csv 文件的字段名 1. 批量导入 多个 csv 文件 for file in ./*.csv;do mv $file tablename. ...

  10. ruby配置相关

    1.安装ruby 方式1: yum install ruby 方式2:https://www.ruby-lang.org/en/downloads/ 使用源码安装 ./configure make m ...