Внешний исполняемый файл не может загрузить необходимые файлы - PullRequest
1 голос
/ 14 апреля 2019

Я только начал возиться с Electron, и для своего первого проекта я попытался создать средство запуска / обновления для игры.Моя проблема в том, что при использовании "('child_process'). Spawn" я получаю сообщение об ошибке игры, в котором говорится, что он не может найти файлы игры.Запуск исполняемого файла без модуля запуска работает, а это означает, что мой модуль запуска каким-то образом не позволяет исполняемому файлу игры получить доступ к необходимым файлам.

Моя реализация:

buttons.js:

const { ipcRenderer } = require('electron')
document.getElementById("play").addEventListener("click", function (e) {

ipcRenderer.send('play')

});

на main.js / createWindow:

ipcMain.on('play', (event) => {
var spawn = require('child_process').spawn;
spawn('C:\\Games\\Game\\Game.exe');
  })

Я пытался использовать exec / File + Sync, который либо выдал ту же ошибку, либо не работал вообще.

1 Ответ

0 голосов
/ 14 апреля 2019

Ваш внутренний игровой файл / ресурсный поиск, вероятно, выполняется относительно текущего рабочего каталога игрового процесса, который предполагается как каталог exe игры.

Я бы предположил, что программа запуска работает из другого каталога, поэтому для решения вашей проблемы вам нужно вызвать spawn с опцией cwd:

spawn('C:\\Games\\Game\\Game.exe', {cwd: 'C:\\Games\Game'});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...