web调用window可执行性程序的三种方式

来源:互联网 发布:2016省市区街道数据库 编辑:程序博客网 时间:2024/05/07 20:04

一、Java调用可执行程序

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");}

缺点:客户端调用后,打开的是服务器端的程序,因为该java代码是运行在服务器端,打开的自然是服务器端本地的应用程序。


二、Js调用可执行程序

  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控件初始化并执行脚本(启用)


三、修改协议调用可执行程序

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、红色部分:为你对应的应用程序路径;  蓝色部分:为你自己命名的应用


如有错误还望指出!


0 0
原创粉丝点击