web项目中要调第三方客户端,于是归纳整理了js调用客户端exe程序的几种方法,如下:
方法一 : 使用ActiveXObject直接执行指定路径的.exe文件 ,此方法只针对IE浏览器
<html> <head> <script language="javascript"> function Run(strPath){ try { var objShell = new ActiveXObject("wscript.shell"); if(!objShell){ alert('Could not get reference to WScript.Shell'); return; } objShell.exec(strPath); objShell = null; }catch(errorObject){ alert('Error: ' + errorObject.message); } } </script> </head> <body> 请输入要运行的程序路径:<br> <input name=exe type=text size=20 value="D:\a.doc"> <BUTTON class=button onclick="Run(exe.value)">确定</BUTTON> </body> </html>
方法二: 通过URL Protocol实现调用本地应用程序,任何浏览器都兼容
以下转载自 : https://www.bbsmax.com/A/rV57pg4VdP/
1.使用记事本(或其他文本编辑器)创建一个protocal.reg文件,并写入以下内容
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOTWebshell] @="URL:Webshell Protocol Handler" "URL Protocol"="" [HKEY_CLASSES_ROOTWebshellDefaultIcon] @="C:\Program Files (x86)\Tencent\WeChat\WeChat.exe" [HKEY_CLASSES_ROOTWebshellshell] [HKEY_CLASSES_ROOTWebshellshellopen] [HKEY_CLASSES_ROOTWebshellshellopencommand] @=""C:\Program Files (x86)\Tencent\WeChat\WeChat.exe" "%1""
2.修改参数
使用记事本打开文件后,按照下图说明修改相关参数
2.1修改连接名称
修改红框内名称自定义即可,全部使用英文字符(该名称即为调用时的href),共六处
2.2修改可执行文件路径
修改红框内可执行文件路径,共两处
需注意:文件路径中使用//分割
3.执行protocal.reg文件
4.创建调用连接
连接地址为 步骤1中所命名的链接名称,后面加://hello,(hello为传递参数,可任意添加)