Я просто пытаюсь погрузиться в Node.js и тестирую основные функции, которые считаю полезными для выполнения моего проекта.Одним из них будет выполнение небольшого файла .exe, который я кодировал на C ++, который обрабатывает данные из текстовых файлов.Я понял, что child_process.execFile может быть лучшим способом для этого.Поэтому я написал небольшой скрипт для запуска сервера и запуска исполняемого файла.Для первого теста я установил путь к «стороннему» -. Exe, и он работал просто отлично (программа запускается как положено).Однако, когда я нацеливаюсь на свой собственный .exe, ничего не происходит вообще, хотя путь правильный (который я проверяю с помощью fs.access).Ручное выполнение файла простым двойным щелчком на .exe также работает совершенно нормально, и соответственно обрабатываются txt-файлы.Так что теперь мне интересно, если получить что-нибудь.в корне неверно, например. Требуется ли .exe выполнение определенного условия для выполнения с execFile?
Вот мой код:
var http = require('http');
const fs = require('fs');
var server = http.createServer(function(req, res){
console.log('Request was made: ' + req.url);
res.writeHead(200, {'Content-Type': 'text/plain'});
});
server.listen(3000, '127.0.0.1');
console.log('Listening to port 3000');
var executablePath = "C:/path/to/file.exe";
fs.access(executablePath, fs.constants.F_OK, (err) => {
console.log(`${executablePath} ${err ? 'does not
exist':'exists'}`);
});
const execFile = require('child_process').execFile;
const child = execFile(executablePath, (error, stdout, stderr) => {
if (error) {
console.error('stderr', stderr);
throw error;
}
console.log('stdout', stdout);
});
Вывод на консоль "... C:/path/to/file.exe существует ".execFile не выдает никакой ошибки.Спасибо за вашу помощь и извинения за мой новый язык!