一尘不染

从node.js启动外部应用程序

node.js

我正在编写一个使用node.js访问本地文件系统的桌面Web应用程序。我目前可以使用node.js打开文件并将其复制到硬盘驱动器上的不同位置。我还想做的是允许用户使用与文件类型关联的应用程序打开特定文件。换句话说,如果用户在Windows环境中选择“
myfile.doc”,它将使用该文件启动MSWord。

我一定是术语的受害者,因为除了与node.js进行通信的子进程的生成之外,我什么都找不到。我只想启动一个文件供用户查看,然后让他们决定如何处理该文件。

谢谢


阅读 557

收藏
2020-07-07

共1个答案

一尘不染

你可以这样做

var cp = require("child_process");
cp.exec("document.docx"); // notice this without a callback..
process.exit(0); // exit this nodejs process

出于安全考虑,请确保该命令未显示任何错误或任何不希望的输出

您应该添加回调参数 child_process.exec(cmd,function(error,stdout,stderr){})

接下来,您可以处理事件,这样就不会阻止脚本的执行,甚至不会使用外部的node.js脚本来启动和处理从“主”脚本生成的进程的输出。

2020-07-07