[英]Node - child process spawn path
我想从Node Webkit应用程序在Windows中运行一个exe。
我正在尝试以下代码,但无法正常工作。
document.getElementById('play').onclick = function()
{
var spawn = require('child_process').spawn;
var child = spawn(__dirname + '/core.exe', ['/arg1']);
var snd = new Audio("min.wav");
snd.play();
win.minimize();
child.stdout.on('data', function (data) {
console.log('stdout: ' + data);
});
child.stderr.on('data', function (data) {
console.log('stderr: ' + data);
});
child.on('close', function (code) {
console.log('child process exited with code ' + code);
var snd = new Audio("restore.wav");
snd.play();
win.restore();
});
}
我走错了路吗? 我需要它是当前目录,并使用该名称和示例arg运行exe。
输出应该是一个消息框,但不会加载任何内容。
设法弄清楚了,它没有定义,因为我是在浏览器上下文中使用它的。 由于某种原因,我没有获得nw.js SDK版本,发现__DIRNAME未定义。 提出了这个解决方案。
var path = require('path');
var nwDir = path.dirname(process.execPath);
var spawn = require('child_process').spawn;
var child = spawn(nwDir + '/app/core.exe', ['/arg1']);
现在按预期工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.