天天看点

js调用本地exe文件

使用run时,注意路径中的空格符用%20

简单调用:

 try{

  var wsh=new ActiveXObject("wscript.shell");

  wsh.run('file:///C:\\Program%20Files%20(x86)\\XXXX.exe');

 }catch(e){    

   alert('找不到文件(或它的组件之一)。请确定路径和文件名是否正确.');      

 }

  var wsh=new ActiveXObject("wscript.shell");

  wsh.exec('file:///C:\\Program Files (x86)\\XXXXXXX.exe');

特殊情况: 有的exe文件运行时会读取他的配置文件,而且配置文件是单独的一个文件,如何与exe文件在同一个目录下,(如:start.ini) 运行xxx.exe,必须读取start.ini文件的这种情况,使用上述方法就不行。

此时可以模拟cmd命令行执行。

wsh.run("cmd.exe /C cd " + dirPath+"&&xxx.exe",0); wsh = null;

dirPath:为xxx.exe及start.ini的目录。 0:表示后台运行,不会弹出cmd命令窗口。