在上一篇中就已經提供了一種方法,就是通過自己寫OCX 給OCX 傳入路徑,通過OCX 啟動應用程序。當然這種方法可擴展性很多,不一定是啟動應用程序了。今天提供另一種比較簡單的可以啟動應用程序的方法,不需要編寫OCX ,這個方法也是借鑒於博友的指點。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>js</title> <SCRIPT language=JavaScript> function Run(strPath) { try { var objShell = new ActiveXObject("wscript.shell"); objShell.Run(strPath); objShell = null; } catch(e){ alert('找不到文件"'+strPath+'"(或它的組件之一)。請確定路徑和文件名是否正確.'); alert(e.message); alert(e.description); alert(e.number) ; alert(e.name); } } </SCRIPT> </head> <!--以下是三種調用方式,onLoad(),oclick(),再就是直接寫連接地址調用--> <body > <a href="#" onclick="Run('file:///D:/SE-1515/ECG WorkStation.exe')">運行EXE</a> </body> </html>
不過在之前得先注冊3個動態庫
注冊.bat
regsvr32 c:\WINDOWS\system32\scrrun.dll
regsvr32 c:\WINDOWS\system32\WSHom.Ocx
regsvr32 c:\WINDOWS\system32\shell32.dll
注意事項,
一定要注意這種啟動路徑'file:///D:/SE-1515/ECG WorkStation.exe'中間盡量不要有空格,很有可能會找不到路徑,所以我當時嘗試把應用程序改下名字,去掉中間的空格,結果應用程序不能正常啟動了,所以還是乖乖的改回去了,這里我用了取巧的辦法,到現在都在享受這我的聰明與機制,我給該應用程序創建了一個快捷方式,將快捷方式的名字改成了我想要的了。然后通過程序去這個快捷方式。哈哈,果然成功了。行如這樣的 file:///D:/SE-1515/ECGWorkStation.exe.lnk
