Javascript 外部可执行文件可以';不要加载必要的文件

Javascript 外部可执行文件可以';不要加载必要的文件,javascript,node.js,electron,Javascript,Node.js,Electron,我刚刚开始玩弄Electron,在我的第一个项目中,我试图为游戏制作一个启动器/更新程序。我的问题是,当使用“('child_process').spawn”时,我收到一条游戏的错误消息,说它找不到游戏文件。在没有启动器的情况下启动可执行文件可以工作,这意味着我的启动器以某种方式阻止游戏可执行文件访问所需的文件 我的实施: buttons.js: const { ipcRenderer } = require('electron') document.getElementById("play")

我刚刚开始玩弄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,它要么给出了相同的错误,要么根本不起作用。

您的游戏内部文件/资源查找可能是以与游戏进程当前工作目录相对的方式完成的,该目录假定为游戏exe目录

我假设启动器是从另一个目录运行的,因此要解决您的问题,您需要使用
cwd
选项调用
spawn

spawn('C:\\Games\\Game\\Game.exe', {cwd: 'C:\\Games\Game'});

您的游戏内部文件/资源查找可能是以相对于游戏进程当前工作目录的方式完成的,该目录假定为游戏exe目录

我假设启动器是从另一个目录运行的,因此要解决您的问题,您需要使用
cwd
选项调用
spawn

spawn('C:\\Games\\Game\\Game.exe', {cwd: 'C:\\Games\Game'});