我試圖通過使用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相同的控制檯中。我刪除了等待鍵盤輸入在控制檯應用程序結束。感謝您的幫助 –