从webapp启动本地exe

时间:2019-02-14 15:06:35

标签: javascript angular exe

我开发了一个托管在Linux服务器(某些客户端为Windows)上的Web应用程序。 我将Angular 6用于前端,将Spring Boot用于后端。

因此,每个用户都使用Firefox连接到该应用。到目前为止一切顺利。

但是,我必须开发一项新功能,允许用户从我的Web应用程序打开安装在自己的计算机(Windows)上的软件...

所以我必须在应用程序的客户端(纯角度的或纯Javascript的)上执行此操作,以启动软件。

我知道出于安全原因禁止这样做,除非我们在FireFox的安全性中添加例外。

我尝试了以下代码,这些代码隔离在javascript文件中:

function launchDict(nom) {
  require(['child_process'], function (child_process) {
    //fs and child_process are now loaded
    var exec = child_process.exec;

    exec('C:\\PuTTY\\putty.exe', function (error, stdOut, stdErr) {
      alert("Appel logiciel");
    });
  })
}

该怎么做?

******更新****** 由于安全合规性,JavaScript方式似乎是“错误的方式”。 并且描述的解决方案似乎仅在IE上有效 例如: Is it possible to run an .exe or .bat file on 'onclick' in HTML

1 个答案:

答案 0 :(得分:2)

由于安全隐患,我认为这是不可能的,但是作为一种解决方法,您可以创建一个可下载的快捷方式文件,其中已包含参数。对于用户来说,单击下载的.lnk是一个额外的步骤,但是由于它似乎已经知道您的本地计算机上可执行文件的路径,因此它至少应该起作用。