DDR爱好者之家 Design By 杰米

使用pyinstaller能很方便的将python脚本打包成单个exe文件。

但是最近有一个需求,打包出来的exe文件需要用管理员权限执行!
也就是双击exe文件运行时,需要弹出一个uac界面让用户授权。

于是我查找pyinstaller的官方文档,说是在打时包加上--uac-admin参数就行了!

然而我实际操作了一下,发现直接加上这个参数仅在打包成多文件时有效 ,打包成单文件时是没用的。

但是我就想打包成单个exe文件,又要uac用户授权界面,怎么办?

好,解决方案:

如图,现在我们有一个test.py文件

pyinstaller打包单文件时--uac-admin选项不起作用怎么办

先对它进行一次打包,直接在目录内打开cmd执行

pyinstaller -F --uac-admin test.py

来到dist目录可以看到打包好的exe文件

pyinstaller打包单文件时--uac-admin选项不起作用怎么办

我们打包时是有加--uac-admin这个参数的,但是在打包出来的exe文件上却没有看到uac的小盾牌图标!

所以现在来到build目录,找到manifest文件,把它复制到py文件的同级目录下

pyinstaller打包单文件时--uac-admin选项不起作用怎么办

就像这样

pyinstaller打包单文件时--uac-admin选项不起作用怎么办

然后再次打开cmd,运行如下的打包命令:

pyinstaller -F --uac-admin -r test.exe.manifest,1 test.py

可以发现比起之前的命令,我们加上了这个参数 -r test.exe.manifest,1

现在再次来到dist目录,就可以看到打包出来的exe是带uac小盾牌图标的了!

pyinstaller打包单文件时--uac-admin选项不起作用怎么办

直接双击运行

pyinstaller打包单文件时--uac-admin选项不起作用怎么办

就可以了!!!

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米