Moonku 2022-06-16 10:07 采纳率: 50%
浏览 304
已结题

electron child_process打开子进程报错找不到文件

electron-builder --win portable打包成单文件后调用子进程启动内部封装进的一个程序提示找不到文件

require('child_process').exec('start file:///static/w.exe');
其中w.exe放在与src平行的static文件夹下,build后dist/static下面能看到有这个文件w.exe
但是每次运行执行这里的时候就会报 windows找到不文件 file:///static/w.exe,请确认文件是否存在。
除这个外其它一切功能正常。

有人遇到过类似问题吗?是怎么解决的呢?感谢
版本信息如下:
"vue": "^2.5.2",
"vue-router": "^3.0.1"
"electron-serve": "^1.1.0",
"electron": "^19.0.3",
"electron-builder": "^23.0.3",

electron的main.js代码如下:


```javascript
const {app, BrowserWindow, ipcMain, Menu, shell} = require('electron');
const path = require('path');
const url = require('url');

const serve = require('electron-serve');
const loadURL = serve({directory: './dist'});

let mainWindow;
function createWindow() {
  Menu.setApplicationMenu(null);  //隐藏菜单栏
  mainWindow = new BrowserWindow({
    width: 800,
    height: 600,
    frame: true,     //隐藏窗口边框
    resizable: false, //禁止调整窗口大小
    webPreferences: {
      nodeIntegration: true,
      contextIsolation: false,
      enableRemoteModule: true,
    }
  });

  loadURL(mainWindow);
  //mainWindow.loadURL('app://index.html');
  mainWindow.webContents.openDevTools({ detach: true });  // 自动打开调试台
  mainWindow.on('closed', function () { mainWindow = null; });

  require('child_process').exec('start file:///static/w.exe');
  //shell.openPath('file:///static/Wow.exe');
}

app.on('ready', createWindow);
app.on('window-all-closed', function () { if (process.platform !== 'darwin') app.quit(); });
app.on('activate', function () { if (mainWindow === null) createWindow(); });

const gotTheLock = app.requestSingleInstanceLock()
if (!app.requestSingleInstanceLock()) app.quit(); //防止多开


```

  • 写回答

2条回答 默认 最新

  • 虎子8 2022-06-16 21:35
    关注

    看下你的package.json吧,应该是打包命令的问题。删除--asar 就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月27日
  • 已采纳回答 6月19日
  • 创建了问题 6月16日

悬赏问题

  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗