Pyinstaller 打包EXE(打算更新成最完整的已测试可行打包方法)

短话简说,打包非常简单
直接根据参数打包就行

目前我测试通过的最完整的打包方式

pyinstaller -F -w -c --clean --icon=ApplicationIcon.ico wxmain.py
-c #可以在控制台打开软件,用于调试,在后面又说
--icon #这是软件图标,下面写的一段是窗口图标,图片具体表达的位置不一样哦
--clean #清除之前的打包文件,重新打包

把窗口图标(bitmapbutton的图标据说也可以通过这种方式,具体没测试过)改成内嵌文本进行打包
以下是完整的流程代码

img2py -n AppIcon -a ApplicationIcon.ico myico.py

把图标放到找个新文件夹放,执行命令

ApplicationIcon.ico这是要打包的图标的名字
myico.py这是要生成的文件名字
在这里插入图片描述
完成之后还需要进入文件添加一行代码,否则会报错
这是添加的代码,生成的原文件里面是没有的

from wx.lib.embeddedimage import PyEmbeddedImage

在这里插入图片描述
以上就是图标转文本代码,然后放进打包目录,我这边是更改窗口图标,还需要在窗口里面添加调用代码,在文件开头还需要import一下

import myico
self.SetIcon(myico.AppIcon.GetIcon())

在这里插入图片描述
以上就是全部更改窗口图标流程,这样打包可以不需要图标文件,直接用图标转换而成的文本打包就行,最后效果与图标文件打包一样

1.找到打包目标路径,按住Shift键,同时鼠标右击,点击在此处打开PowerShell在这里插入图片描述
2.最基础的打包方式就是这样,不过不建议这样操作,这是单文件打包,XXXX是要打包的模块名字

pyinstaller -F XXXX.py

在这里插入图片描述
3.下面这种是比较推荐的操作方式,这是多文件打包,XXXX是要打包的模块名字

pyinstaller -D XXXX.py

在这里插入图片描述
以上就是基础打包,打包完成就可以使用了,后面属于进阶操作

最最关键的一点,因为打包完成,无法查到报错在哪里,可以在打包的时候加上’-c’,这样可以通过控制台运行打包文件,最后的报错会在控制台输出,比较容易查找打包运行失败的原因

打包示例
在这里插入图片描述
控制台运行示例
若是运行报错,会在控制台展示,我打包的是已经通过的文件,所以看不到报错了
在这里插入图片描述
-i 图标

pyinstaller -D -w -i 图标.ICON XXXX.py

–k 密码

示例:

pyinstaller -D -w --k=密码 XXXX.py

这个可以在打包的时候对软件进行加密,保护自己的软件,没什么用,但是聊胜于无,加密还需要安装一个扩展包,pip就行

包名:pycrypto
在这里插入图片描述
-v
先搞定版本信息的来源

pyi-grab_version.exe   D:\360\360Safe\360Safe.exe

可以是任意一个软件的版本信息作为来源参考
执行之后找到并打开更改成自己想要的就行

打包失败了,下次成功了再更新…

多参数打包
示例:

pyinstaller -F -w --k=123 --icon=ApplicationIcon.ico wx_main.py

在这里插入图片描述

以下是各种参数,可以参考

-F, –onefile 
打包一个单个文件,如果你的代码都写在一个.py文件的话,可以用这个,如果是多个.py文件就别用 

-D, –onedir 
打包多个文件,在dist中生成很多依赖文件,适合以框架形式编写工具代码,我个人比较推荐这样,代码易于维护 

-K, –tk 
在部署时包含  TCL/TK 

-a,ascii 
不包含编码 . 在支持 Unicode的 python 版本上默认包含所有的编码 . 

-d, –debug 
产生 debug 版本的可执行文件 

-w,–windowed,–noconsole 
使用 Windows 子系统执行 . 当程序启动的时候不会打开命令行 ( 只对 Windows 有效 )
 
-c,–nowindowed,–console 
使用控制台子系统执行 ( 默认 )( 只对 Windows 有效 ) 
pyinstaller -c  xxxx.py 
pyinstaller xxxx.py --console 

-s,–strip 
可执行文件和共享库将 run through strip. 注意 Cygwin的 strip 往往使普通的 win32 Dll 无法使用 . 

-X, –upx 
如果有 UPX 安装 ( 执行 Configure.py 时检测 ), 会压缩执行文件 (Windows 系统中的 DLL 也会 )( 参见 note) 

-o DIR, –out=DIR 
指定 spec 文件的生成目录 , 如果没有指定 , 而且当前目录是 PyInstaller 的根目录 , 会自动创建一个用于输出 (spec 和生成的可执行文件 ) 的目录 . 如果没有指定 , 而当前目录不是 PyInstaller 的根目录 , 则会输出到当前的目录下 . 

-p DIR, –path=DIR 
设置导入路径 ( 和使用 PYTHONPATH 效果相似 ). 可以用路径分割符 (Windows 使用分号 ,Linux 使用冒号 ) 分割 , 指定多个目录 . 也可以使用多个 -p 参数来设置多个导入路径,让pyinstaller自己去找程序需要的资源 

–icon=<FILE.ICO>file.ico 添加为可执行文件的资源 ( 只对 Windows 系统有效 ),改变程序的图标  pyinstaller - i  ico路径 xxxxx.py 

–icon=<FILE.EXE,N>file.exe 的第 n 个图标添加为可执行文件的资源 ( 只对 Windows 系统有效 )
 
-v FILE, –version=FILE 
将 verfile 作为可执行文件的版本资源 ( 只对 Windows 系统有效 ) 

-n NAME, –name=NAME 
可选的项目 ( 产生的 spec 的 ) 名字 . 如果省略 , 第一个脚本的主文件名将作为 spec 的名字 

以上就是全部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值