pyinstaller+upx给python GUI程序添加自定义图标

一、在线.ico图标生成

windows用48x48尺寸
https://www.ico51.cn/

二、upx打包图标工具

https://upx.github.io/

三、UI文件生成py代码

pyside2-uic window.ui > window.py

四、打包命令

1、–icon:这个是.ico图标路径
2、–upx-dir:upx打包工具exe文件路径
3、-no-upx:这个参数是不使用upx压缩,其实pyinstaller正确参数应该是–no-upx,但是使用–no-upx会报错且无法打包,用-no-upx虽然参数不存在但是能正确打包,只是main.spec会变成-no-upx.spec,打出来的包名称也会变成-no-upx.exe,但是不影响使用,就没研究了。
4、备注:安全起见,我的路径都是乱写的,你们写自己的就行

#第一次打包使用
pyinstaller -wF --icon="D:\upx424win64\ico\phiz.ico" -no-upx --upx-dir="D:\\upx424win64" --paths "D:\\GitDir\\qt_project" --add-data "png/1.png;png" --add-data "png/2.png;png" --add-data "png/3.png;png" --add-data "keys/20240402_certificate.pem;keys" --add-data "keys/20240402_private_key.pem;keys" --add-data "keys/20240402_public_key.pem;keys" main.py --hidden-import chat_module  --hidden-import window

#使用已有main.spec文件打包(未添加新文件使用)
pyinstaller main.spec

五、生成的main.spec文件

a = Analysis(
    ['main.py'],
    pathex=['D:\\\\work2023\\\\20231116\\\\GitDir\\\\qt_project'],
    binaries=[],
    datas=[('png/1.png', 'png'), ('png/2.png', 'png'), ('png/3.png', 'png'), ('keys/20240402_certificate.pem', 'keys'), ('keys/20240402_private_key.pem', 'keys'), ('keys/20240402_public_key.pem', 'keys')],
    hiddenimports=['chat_module', 'data_aes_encrypt', 'data_md5_sign',  'window'],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    noarchive=False,
)
pyz = PYZ(a.pure)

exe = EXE(
    pyz,
    a.scripts,
    a.binaries,
    a.datas,
    [],
    name='o-upx',
    debug=False,
    bootloader_ignore_signals=False,
    strip=False,
    upx=True,
    upx_exclude=[],
    runtime_tmpdir=None,
    console=False,
    disable_windowed_traceback=False,
    argv_emulation=False,
    target_arch=None,
    codesign_identity=None,
    entitlements_file=None,
    icon=['D:\\upx424win64\\ico\\xxx.ico'],
)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值