我尝试执行*.exe
文件,但得到了:
exec error: { Error: spawn ${__dirname}/install.exe ENOENT
代码:
var execFile = require('child_process').execFile
execFile('${__dirname}/install.exe', function(error, stderr) {
console.log('stderr: ', __dirname);
if (error !== null) {
console.log('exec error: ', error);
}
});
还尝试了:'${__dirname}\install.exe'
,'./install.exe'
,'D:\install.exe'
答案 0 :(得分:3)
@FelixKling有正确的建议;除非您使用反向标记创建字符串,否则变量不起作用。此外,使用path
模块解析文件路径是个好主意:
var path = require('path');
var execFile = require('child_process').execFile;
var exePath = path.resolve(__dirname, './install.exe');
execFile(exePath, function(error, stderr) {
console.log('stderr: ', __dirname);
if (error !== null) {
console.log('exec error: ', error);
}
});
修改强>:
这是关于ENOENT
的原始问题。对于您的第二个UNKNOWN
错误,原因可能会有所不同。听起来这可能是一个权限问题,因为可执行文件需要升级到管理员权限。