当前位置: 首页 > 面试题库 >

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

况野
2023-03-14
问题内容

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

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

谢谢


问题答案:

你可以这样做

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脚本来启动和处理从“主”脚本生成的进程的输出。



 类似资料:
  • 问题内容: 当前,我有一个Java Standalone Swing应用程序。 现在,当用户单击Swing应用程序中的按钮时,我想启动另一个Java应用程序(说:Calculator.jar) 我可以知道什么是便携式方法吗?这样它就可以在多个OS中工作吗? 问题答案: 使用或只是将其放在类路径中并调用其。

  • 在本教程中,我将尝试从外部manage.py文件中获取现有的应用程序 我的应用程序结构如下: manage.py文件: 最后是文件(简化): 因此,当我尝试运行:,输出为: 无法解析从导入的配置。我试图解决这与chdir可见在manage.py. 我的环境变量是我从工作设置中获得的: 我通过替换以下内容成功通过了导入指令: 通过 但是整个项目包含从myserver开始的导入 所以最后一个问题是:为

  • 问题内容: 如何创建可以重新启动的应用程序?我想创建一个设置可自行重启的网络管理员的应用。这可能吗?如果是这样,怎么办?我以为内置于节点中的全局变量可能会实现这一点。 问题答案: 我已经跑了好几次了,很容易上手。在以下位置查看:https://github.com/nodejitsu/forever

  • 问题内容: 我正在寻找一种从Matlab中启动应用程序的方法。问题是,我的Matlab脚本将一些结果保存到文件中,然后应在关联的应用程序中打开(在这种情况下为Blender)。 我熟悉类似的命令 要么 以及其他一些方法,但实际上,该应用程序是从Matlab PATH启动的,因此它在Matlab目录中查找所需的各种库。例如: 是否有某种方法可以启动使用全局(系统)PATH的应用程序? 不久前,我以为

  • 问题内容: 我有一个程序和一个脚本,希望将其合并到我的Web应用程序中。 我想使用它们来解析上传到我的网站的文件;处理过程可能需要几秒钟,因此我也避免阻止该应用程序。 我如何才能只接受文件,然后仅在控制器的子过程中运行程序和脚本? 问题答案: 参见child_process。这是一个使用的示例,它允许您在输出数据时写入stdin并从stderr / stdout中读取。如果您不需要写stdin并且

  • 我创建了一个SpringBoot的示例项目,以了解外部客户机功能,运行时会出现以下错误。 com.example.demo.RestClient中的字段Remote teCallClient需要一个类型为com.example.demo.Remote teCallClient的bean,但找不到。操作:考虑在配置中定义类型为com.example.demo.远程呼叫客户端的bean。 我尝试了各种