在windows(child_process.spawn
)上的nodejs中生成一个新子节点时,它总是打开一个空白控制台窗口,该窗口在子进程结束之前保持打开状态。
有没有办法避免这种情况?
即。我们希望使用forever
将我们的应用程序作为后台服务运行。但是,由于它不断打开和关闭空白控制台窗口,所以它不是很背景...
编辑:使子应用程序以“安静”模式运行不是一种选择,因为生成的部分进程是wmic
。
答案 0 :(得分:1)
这种方式永远会为应用程序生成一个控制台。并且不会为每个产生控制台窗口打开。
forever -c "cmd /c node" start app.js
答案 1 :(得分:0)
继RanP的答案后,
forever start --uid "foo" -c "cmd /c node" app.js
你需要开始'在-c args和--uid之前是可选的。请注意,-c命令中只有一个空格,允许此操作。
答案 2 :(得分:0)
使用 detached
之类的属性
spawn('node', [filePath, args], {
detached: true,
stdio: ['inherit', 'inherit', 'inherit', 'ipc'],
})
答案 3 :(得分:0)
2017 年,windowsHide
选项为 introduced:
隐藏通常在 Windows 系统上创建的子进程控制台窗口。 默认: false
。