electron-builder允许安装时请求提升权限的场景分析
场景
在下面的场景中可能会需要管理员权限:
- electron开发的软件具有文件操作功能,如果electron安装到C盘,并操作项目中(C盘)的文件,就会因权限不足报错。
- electron需要操作注册表等系统级关键配置
- 某些命令行的运行可能涉及底层,需要管理员权限
electron安装时请求提升权限
上面场景都需要提升electron运行时权限。
比较麻烦的做法是,我们可以每次运行electron时,以管理员身份运行,但是这对用户明显是不太友好的。
另一种做法是,在安装electron时,就提醒用户需要提升权限才可继续安装。
打包electron我用的是electron-builder,需要配置的参数如下:
"allowElevation":true
允许安装时,请求提升权限。
安装时,会出现如图的提示信息:
我的配置模板
"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会使用默认配置。
到此这篇关于electron-builder允许安装时请求提升权限的文章就介绍到这了,更多相关electron-builder请求权限内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
最新评论