electron-builder允许安装时请求提升权限

场景

在下面的场景中可能会需要管理员权限:

  1. electron开发的软件具有文件操作功能,如果electron安装到C盘,并操作项目中(C盘)的文件,就会因权限不足报错。
  2. electron需要操作注册表等系统级关键配置
  3. 某些命令行的运行可能涉及底层,需要管理员权限

electron安装时请求提升权限

上面场景都需要提升electron运行时权限。

比较麻烦的做法是,我们可以每次运行electron时,以管理员身份运行,但是这对用户明显是不太友好的。

另一种做法是,在安装electron时,就提醒用户需要提升权限才可继续安装。

打包electron我用的是electron-builder,需要配置的参数如下:

c 复制代码
"allowElevation":true

允许安装时,请求提升权限。

安装时,会出现如图的提示信息:

我的配置模板

c 复制代码
"build": {
    "productName": "cnde-OUTSIDE",
    "appId": "cnde",
    "asar": false,
    "directories": {
      "output": "release/1.0.1/OUTSIDE"
    },
    "files": [
      "dist",
      "electron"
    ],
    "nsis": {
      "oneClick": false,
      "perMachine": true,
      "allowToChangeInstallationDirectory": true,
      "include": "./electron/installer-OUTSIDE.nsh",
      "allowElevation": true
    },
    "mac": {
      "category": "your.app.category.type"
    },
    "linux": {
      "target": [
        {
          "target": "AppImage",
          "arch": [
            "arm64"
          ]
        }
      ]
    },
    "win": {
      "icon": "./dist/electron/favicon.ico",
      "target": [
        {
          "target": "nsis",
          "arch": [
            "ia32"
          ]
        }
      ]
    }
  },

把这些配置写在package.json中即可,注意'./electron/installer-OUTSIDE.nsh'与'./dist/electron/favicon.ico'地址,如果不清楚这是在干嘛,也不需要配置,直接删掉这两项配置即可,electron-builder会使用默认配置。

相关推荐
SameX9 分钟前
初识 HarmonyOS Next 的分布式管理:设备发现与认证
前端·harmonyos
M_emory_36 分钟前
解决 git clone 出现:Failed to connect to 127.0.0.1 port 1080: Connection refused 错误
前端·vue.js·git
Ciito39 分钟前
vue项目使用eslint+prettier管理项目格式化
前端·javascript·vue.js
成都被卷死的程序员1 小时前
响应式网页设计--html
前端·html
mon_star°2 小时前
将答题成绩排行榜数据通过前端生成excel的方式实现导出下载功能
前端·excel
Zrf21913184552 小时前
前端笔试中oj算法题的解法模版
前端·readline·oj算法
文军的烹饪实验室3 小时前
ValueError: Circular reference detected
开发语言·前端·javascript
Martin -Tang4 小时前
vite和webpack的区别
前端·webpack·node.js·vite
迷途小码农零零发4 小时前
解锁微前端的优秀库
前端
王解5 小时前
webpack loader全解析,从入门到精通(10)
前端·webpack·node.js