Electron开机自启动获取安装位置的路径

给 Electron 编写的应用增加开机自启动

最近在使用 electron 写一个桌面端日历的软件,需要做一个开机自启动的功能,发现 electron 官方文档上直接提供了对应的 API

因为只需要实现开启自启动,所以直接贴代码,如下:

app.setLoginItemSettings({
  openAtLogin: true
})

然后使用 electron-builder 进行项目打包,在打包的配置当中,把存储日历的一些图片目录添加到了打包后到文件当中了,通过 process.cwd() 的方式就可以取到打包之后的目录中的资源文件

开机自启动找不到资源目录

打包构建,安装到自己的电脑上,开机自启动后,发现控制台直接报错,找不到资源文件夹的目录,经过一番搜索,发现原来开机自启动,process.cwd() 获取到的路径并不是软件安装的目录,知道 bug 产生的原因就可以解决了,在 electron 的 API 目录当中,有对应的获取软件安装位置的 API,直接拿来用即可。
在主进程中监听渲染进行获取 APP 安装目录的事件,代码如下:

  ipcMain.handle('get-path', () => {
    return dirname(app.getPath('exe'))
  })

在渲染进程当中直接调用来获取软件的安装目录,代码如下,注意 ipcRenderer.invoke 返回的是一个 Pormise, 为了方便处理,我这里直接使用 await 进行了处理:

const BASE_DIR =  await ipcRenderer.invoke('get-path')
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值