Electron: Crash after build exe

805 Views Asked by At

I am tring merge wiki.js with electron
and, I can make simple electron application as below code

main.js

const { app, BrowserWindow } = require('electron');
const path = require('path')

var winGlobal;

// This will run express server with port 3000 within 3~6 seconds
require('./server/index.js')

// load the url after 9 seconds.
setTimeout(() => winGlobal.loadURL('http://localhost:3000'), 9000);

function createWindow() {
    const win = new BrowserWindow({
        width: 1200,
        height: 900,
        webPreferences: {
            //   preload: path.join(__dirname, 'preload.js')
        }
    })
    winGlobal = win;
}

app.whenReady().then(() => {
    createWindow()

    app.on('activate', () => {
        if (BrowserWindow.getAllWindows().length === 0) {
            createWindow()
        }
    })
})

app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') {
        app.quit()
    }
})

package.json

{
    ...
    "main": "main.js"
    ...
    "build": {
        "productName": "wiki.js-electron",
        "appId": "com.electron.wiki",
        "directories": {
          "output": "build"
        },
        "asar": true
    },

    "dependencies": {
        ...
        "express": "4.17.1",
        "sqlite3": "5.0.0",
        ...
    }
    "devDependencies": {
        ...
        "electron": "^12.0.2",
        "electron-builder": "^22.10.5",
        ...
    }
}

And, I can run the current project with npx electron . Screen

To build exe, I can build with npx electron-build, and new exe file is generated without error log. Screen2

but, the exe is crash without any error.

How I can fix this?


Full Source code Github: https://github.com/nkhs/wiki.js-electron
Built exe: https://wetransfer.com/downloads/535a59714d4d957f478c14816ee0142e20210330143018/0d5cbe

1

There are 1 best solutions below

0
On BEST ANSWER

I Found Solution Instead of running with a mouse double click at File Explorer, I used windows command prompt to run exe, and, from there, I can find error logs.

So, I found: the some relative path is not working, because, the electron pack source code with asar.

and, some file operate is not working, etc fs.read, fs.readDir.

Cannot access files inside asar archive in electron app ,


So, I removed this problem.