1.java执行exe文件
Runtime rn = Runtime.getRuntime();
Process p = null;
try {
String fileName = "D:/Program Files (x86)/RTX.exe"; //String fileName = "C:/Program Files (x86)/Tencent/QQ/QQProtect/Bin/QQProtect.exe";
p = rn.exec("\""+fileName+"\""); // \":处理路径中的空格
} catch (Exception e) {
System.out.println("Error exec AnyQ");
}
2.js执行exe文件
try{
var
strPath="D:\\Users\\zhuyapeng\\AppData\\Local\\Youdao\\Dict\\YodaoDict.exe";
//var strPath="C:\\Program Files (x86)\\Tencent\\QQ\\QQProtect\\Bin\\QQProtect.exe";
var
objShell=new ActiveXObject("WScript.Shell");
if
(objShell) {
objShell.Run("\""+strPath,
8, true); //程序会阻塞在此,直至客户端程序返回, "\"":解决目录包含空格问题
}
objShell=null;
window.status="操作结束。";
}catch(e){
}
注意:js代码运行后,会报 "Automation服务器不能创建对象" 错误。
解决办法:
1、将访问的路径加入IE可信任站点中
Internet选项 - 安全 - 可信任站点 - 站点 - 添加访问路径
2、启用 "对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本"选项
Internet选项 - 安全 - 可信任站点 - 自定义级别 - 对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本(启用)
3.修改协议执行exe文件
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\bbfexe]
"URL Protocol"="D:\\Program Files (x86)\\RTX.exe"
@="TencentProtocol"
[HKEY_CLASSES_ROOT\bbfexe\DefaultIcon]
@="D:\\Program Files (x86)\\RTX.exe,1"
[HKEY_CLASSES_ROOT\bbfexe\shell]
[HKEY_CLASSES_ROOT\bbfexe\shell\open]
[HKEY_CLASSES_ROOT\bbfexe\shell\open\command]
@="\"D:\\Program Files (x86)\\RTX.exe\" \"123456\""
使用方法:
1、将以上代码保存为 .reg文件,然后双击该文件运行,将信息添加进注册表
2、通过点击<a href="bbfexe://123456">打开应用</a>超链接调用可执行程序
3、红色部分:为你对应的应用程序路径; 蓝色部分:为你自己命名的应用