我试图通过使用child_process从nodejs运行控制台应用程序(写在cpp上)的实例。 下面是代码:使用child_process从nodejs应用程序运行控制台应用程序
function startSingleApp() {
console.log("startSingleApp entered");
var exec = childProcess.exec;
var appOut;
exec("./ConsoleApplication.exe" ,function callback(error, stdout, stderr){
appOut = stdOut;
console.log("started console app");
});
};
而且ConsoleApplication4只打印字符串(COUT < <“一些字符串”) 预期的行为:对ConsoleApplication4的每个实例 - 控制台窗口打开,新工艺创造 实际行为:没有控制台窗口,没有进程创建。但是,在控制台上打印的“开始控制台应用程序”字符串(从nodejs应用程序启动) ConsoleApplication.exe位于nodejs应用程序所在的同一文件夹中 如果用某些窗口应用程序(记事本或计算器)替换ConsoleApplication.exe - 它可以工作。 问题 - 这段代码中缺少什么?我是否需要手动将控制台从控制台应用程序中取出?
您的帮助将有所帮助。
Thaks提前
感谢您的快速回复 - 但它仍然无效 –
它是如何工作的?你真的需要窗户吗?你有没有检查回调通过的'error'参数? – Ryan
某些更新:目前它将日志打印到与nodejs相同的控制台中。我删除了等待键盘输入在控制台应用程序结束。感谢您的帮助 –