使用electron-builder打包exe,如何申请管理员权限?
发布于 作者:苏南大叔 来源:程序如此灵动~windows
系统下的exe
,有个"使用管理员权限运行"的概念。如果你希望用户打开exe
的时候,就主动申请这个权限的话。那么,您可以使用mt.exe
修改exe
中的隐藏配置文件,来达到这个目的。但是这里有个更好的方案,如果您使用electron-builder
来打包你的exe
文件的话,那么,可以简单的配置一个requestedExecutionLevel
选项,来达到一样的目的。
本文测试环境:win10
/electron-vue
/electron-builder@20.38.5
。
requestedExecutionLevel
不论是使用mt.exe
还是使用electron-builder
,要配置的项目都是requestedExecutionLevel
。可用的选项都是如下三个:
requestedExecutionLevel | 说明 |
---|---|
asInvoker | 默认配置 |
requireAdministrator | 管理员权限 |
highestAvailable | 可用的最高权限 |
electron-builder
配置文件
现在假设,您的electron-builder
使用单配置文件,也就是说:需要修改package.json
文件。修改的节点位置为:build
>win
>requestedExecutionLevel
。
{
"build": {
//...
"win": {
"requestedExecutionLevel": "highestAvailable"
}
//...
},
}
这里requestedExecutionLevel
配置为highestAvailable
或者requireAdministrator
都是可以的。大多数情况下,两者都是等同的。
效果图
配置好选项后,重新构建的安装包,安装之后获得的exe
,打开的时候,就会自动请求管理员权限了。在苏南大叔的测试中,参数使用highestAvailable
或者requireAdministrator
的效果图,都是一样的。效果图如下图所示:
相关链接
- 《如何利用mt.exe改造electron程序,主动申请管理员权限》
https://newsn.net/say/electron-admin-mt.html
延伸阅读
在electron-builder
的源码中,在下述源码位置:electron-builder/packages/app-builder-lib/src/options/
,有个winOptions.ts
文件,这里有更多的windows
平台下的electron-builder
配置项目。
总结
本文所描述的是使用electron-builder
构架打包的时候,最终的exe
如何请求管理员权限的配置项目requestedExecutionLevel
。注意:是最终的安装好的exe
,而不是打包好的安装包exe
。
更多electron
精彩文章,请点击苏南大叔的博客:
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
electron-vue打包后,在windows触发病毒与威胁防护,请问该如何解决?