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:\n' + 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_ROOT\Webshell] @="URL:Webshell Protocol Handler" "URL Protocol"="" [HKEY_CLASSES_ROOT\Webshell\DefaultIcon] @="C:\\Program Files (x86)\\Tencent\\WeChat\\WeChat.exe" [HKEY_CLASSES_ROOT\Webshell\shell] [HKEY_CLASSES_ROOT\Webshell\shell\open] [HKEY_CLASSES_ROOT\Webshell\shell\open\command] @="\"C:\\Program Files (x86)\\Tencent\\WeChat\\WeChat.exe\" \"%1\""
2.修改參數
使用記事本打開文件后,按照下圖說明修改相關參數
2.1修改連接名稱
修改紅框內名稱自定義即可,全部使用英文字符(該名稱即為調用時的href),共六處
2.2修改可執行文件路徑
修改紅框內可執行文件路徑,共兩處
需注意:文件路徑中使用//分割
3.執行protocal.reg文件
4.創建調用連接
連接地址為 步驟1中所命名的鏈接名稱,后面加://hello,(hello為傳遞參數,可任意添加)