我在Windows和Node JS / Express下,使用已安装的' child_process'模块。
我需要启动可执行文件&c; \ test \ test.exe' - 来自Node JS的Windows控制台应用程序。
我可以启动非控制台应用程序,但我遇到了控制台应用程序的问题;
例如我试过这个简单的陈述:
const childProcess = require('child_process');
..............
childProcess.execFile(process.env.C_APP_EXEC_NAME);
适用于' full_path \ WINWORD.EXE'但不是c:\ test \ test.exe 我想补充一点,我需要打开控制台,因为test.exe通过它与用户交互。 谢谢你的帮助
答案 0 :(得分:1)
您也可以使用spawn
。
const { spawn } require('child_process');
const child = spawn('cmd.exe', ['/c', PATH_TO_EXE], { detached: true })
// Event handlers for the child process
child.on('data', (data) => {})
child.on('error', (error) => {})
child.on('close', (code) => {})
答案 1 :(得分:0)
这里汇总了几个与Node JS和Windows相关的部分: 电话应该是
childProcess.exec("start cmd @cmd /k " + process.env.C_APP_EXEC_NAME);
process.env.C_APP_EXEC_NAME是test.exe文件的完整路径或其到Node JS应用程序根目录的相对路径 HTH