How to get the original path of a portable Electron app?

前端 未结 7 1943
伪装坚强ぢ
伪装坚强ぢ 2020-12-24 08:08

I have an Portable Electron App (packed with: electron-builder + asar, portable build) on Windows. I try to get the application path but it returns a path within the user\\t

7条回答
  •  予麋鹿
    予麋鹿 (楼主)
    2020-12-24 08:53

    Seems like PORTABLE_EXECUTABLE_FILE only works under certain Electron-Builder configurations; In particular, it won't work in apps deployed as a portable directory.

    In such cases, the following will get you the application root path:

    const path = require('path')
    import { app } from 'electron'
    
    let rootDir = app.getAppPath()
    let last = path.basename(rootDir)
    if (last == 'app.asar') {
        rootDir = Path.dirname(app.getPath('exe'))
    }
    

提交回复
热议问题