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'],
)
相关文章:
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打包工…...
LeetCode【0034】在排序数组中查找元素的第一个和最后一个位置
本文目录 1 中文题目2 求解方法:左右边界二分查找2.1 方法思路2.2 Python代码2.3 复杂度分析 3 题目总结 1 中文题目 给定一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存…...
react-markdown内容宽度溢出和换行不生效问题
情景复现: 解决办法,添加样式进行限制 /* index.css */ .markdown-container {word-break: break-word; /* 强制长单词断行 */white-space: pre-wrap; /* 保留空白符序列,但是正常地进行换行 */overflow-wrap: break-word; /* 在长单词或…...
uniapp 上传 base64 图片
在图片裁剪时候返回的是base64文件 需要上传到obs一般出现在h5网页端 可以直接使用 js 原始解决 应该只可以在h5浏览器内使用 // 提取 Base64 编码部分 const base64Data e.tempFilePath.replace(/^data:image\/(\w);base64,/, ""); // 将 Base64 编码转换为 Arra…...
让Git走代理
有时候idea提交代码或者从github拉取代码,一直报错超时或者:Recv failure: Connection was reset,下面记录一下怎么让git走代理从而访问到github。 1.打开梯子 2.打开网络和Internet设置 3.设置代理 记住这个地址和端口 4.打开git bash终端 输入以下内容 git c…...
通义千问API调用测试 (colab-python,vue)
文章目录 代码(来自官网)colab中用python测试Qwen2.5在官网上查看并确定过期时间这里看到我的免费额度到25年5月在同一个页面,点击API示例 前端调用直接在前端调用的优缺点以vue为例(代码是基于官网node.js的代码转换而来…...
H3C ER8300G2-X未授权导致信息泄露漏洞(CVE-2024-32238)
免责声明: 本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在…...
随手记:简单实现纯前端文件导出(XLSX)
1.需求背景: 由于导入需要经过后端存储数据库,所以导入还是和后端联调 但是简单的前端导出有部分是可以直接给到用户 xlsx插件简介 xlsx插件(通常指的是SheetJS/js-xlsx)是一个强大的JavaScript库,它允许你在浏览器…...
SwiftUI 高级开发教程系列 - 第 3 章:数据持久化
在现代应用中,数据持久化是一项非常重要的功能,它使得应用的数据可以在重启后依然保留,提升用户体验。SwiftUI 提供了多种数据持久化方法,包括使用 UserDefaults 保存简单数据和 Core Data 进行更复杂的数据管理。本章将详细讲解这两种技术的用法,并展示如何在 SwiftUI 项…...
代码随想录第二十四天| 93.复原IP地址 78.子集 90.子集II
93. 复原IP地址 题目描述 给定一个只包含数字的字符串 s,复原它并返回所有可能的有效 IP 地址格式。 一个有效的 IP 地址 由四个整数部分组成,每部分的取值范围是 0-255,每个部分不能包含前导零。 解题思路 这道题目要求我们将一个数字字…...
Linux编程:基于 Unix Domain Socket 的进程/线程间通信实时性优化
文章目录 0. 引言1. 使用 epoll 边缘触发模式非不要不选择阻塞模式边缘触发(ET)模式优点示例 2. 使用实时调度策略3. CPU 绑定4. 使用无锁缓冲区5. 优化消息传递的大小和频率6. 使用 SO_RCVTIMEO 和 SO_SNDTIMEO7. 示例代码其他阅读 0. 引言 前几天被问…...
PET-文件包含-FINISHED
include发生错误报warning,继续执行。require发生错误直接error,不继续执行 无视扩展名,只要能解析,就能当可执行文件执行,哪怕文件后缀或没后缀 1 条件竞争 pass17 只需要知道tmp的路径。把xieshell.jpg上传&…...
《WebGL编程指南》书籍分享
在这个数字化时代,WebGL作为一门前沿的图形渲染技术,为网页带来了前所未有的交互体验。今天,我很荣幸向大家分享一本关于学习WebGL的书籍——《Webgl编程指南》 电子版下载链接: https://pan.baidu.com/s/1eTX2Y5ynYH0pUQRf0Jcbow?...
go T 泛型
目录 1、类型约束 2、泛型函数 3、泛型结构体 4、泛型接口 5、以接口作为类型约束 关键词:泛型、类型参数、类型约束 Go 语言在 1.18 版本引入了泛型(Generics)特性,可以编写更通用、可复用的代码,泛型可以用于&a…...
React的基础API介绍(二)
目录 useStateuseState 的基本原理1. 状态在函数组件中的引入2. useState 的工作机制3. Hook 状态与组件渲染 useState 的使用方法1. 基本用法2. 多个状态变量3. 更新状态 注意事项与最佳实践1. 状态更新可能是异步的2. 不要直接修改状态3. 更新对象或数组状态4. 避免闭包陷阱 …...
远程开发测试必看:如何在群晖NAS上运行网页版Ubuntu
文章目录 前言1. 下载Docker-Webtop镜像2. 运行Docker-Webtop镜像3. 本地访问网页版Linux系统4. 群晖NAS安装Cpolar工具5. 配置异地访问Linux系统6. 异地远程访问Linux系统7. 固定异地访问的公网地址 前言 本文将详细讲解如何在群晖NAS上部署docker-webtop,并利用c…...
JAVA题目笔记(十五)经典算法题
一、按要求排序 要求:定义数组并存储一些女朋友对象,利用Arrays中的sort方法进行排序 属性包括:姓名,年龄,身高 按照年龄大小进行排序,年龄一样按照身高排序,身高一样按照姓名字母进行排序。…...
「Mac玩转仓颉内测版8」入门篇8 - Cangjie函数与方法
本篇介绍Cangjie编程语言中的函数与方法,帮助理解如何通过函数封装重复操作,提升代码的复用性和可维护性。 关键词 Cangjie函数方法定义参数传递返回值模块化与复用性 一、什么是函数? 函数是一个代码块,用于接收参数、执行操作…...
2024最新版JavaScript逆向爬虫教程-------基础篇之Proxy与Reflect详解
目录 一、监听对象的操作二、Proxy基本使用2.1 创建空代理2.2 定义捕获器2.2.1 Proxy的set和get捕获器2.2.2 Proxy(handler)的13个捕获器 三、Reflect的作用3.1 Reflect的使用3.2 Reflect其余方法(9个)3.3 Proxy与Reflect中的receiver参数3.4 Reflect中的construct方法 ECMAScr…...
代码修改材质参数
1、 如何得到对象使用的材质 获取到对象的渲染器Renderer Mesh Renderer和Skinned Mesh Renderer都继承Renderer,可以用里式替换原则父类获取、装载子类对象 通过渲染器获取到对应材质 可以利用渲染器中的material或者sharedMaterial来获取物体的材质࿰…...
用 AI 助手清理 Windows C盘缓存:AppData/IDE/AI模型深度分析与安全清理实战
关键词:C盘清理、Windows磁盘优化、AppData缓存、AI工具缓存、VS Code扩展、Hugging Face缓存、Ollama模型清理、WorkBuddy 适用系统:Windows 10 / Windows 11 难度:⭐⭐(适合有基础的开发者) 目录 背景:开发机C盘为何特别容易爆满 环境准备 Step 1:调用AI进行深度磁盘扫…...
【RK3588 NPU性能调优实战】多线程异步推理YOLOv5,榨干6TOPS算力
1. 为什么你的RK3588 NPU跑不满6TOPS? 第一次在RK3588上跑YOLOv5时,我也被官方宣称的6TOPS算力唬住了。直到亲眼看到npu-smi显示的实际利用率——好家伙,不到30%!这就像买了辆跑车却只能挂一档开。经过两周的折腾,终于…...
GCC开发者转LLVM必看:模块化设计带来的5个关键工作流变革
GCC开发者转LLVM必看:模块化设计带来的5个关键工作流变革 当GCC开发者第一次接触LLVM时,往往会惊讶于其完全不同的设计哲学。就像从单块巨石建筑转向预制模块化结构,LLVM的三段式架构不仅改变了代码的组织方式,更从根本上重塑了编…...
从电网到实验室——10kW大功率电源的Psim仿真实战
基于Psim的Boost型 PFC移相全桥AC-DC电源设计仿真 1、前级电网输入220AC,50Hz,中间级母线电压为600V,后级600V输入,547V输出,电压可调,功率10kW 2、前级基于Boost电路PFC,平均电流控制ÿ…...
保姆级教程:在QT中配置qcustomplot实现热力图(含常见问题解决方案)
QT中qcustomplot热力图实战:从配置到交互优化的完整指南 第一次在QT项目中尝试用qcustomplot绘制热力图时,我被数据映射和实时刷新的问题困扰了整整两天。直到凌晨三点调试通过的那一刻,才真正理解这个强大可视化工具的精妙之处。本文将分享那…...
vue3-composition-admin TypeScript最佳实践:类型安全与开发效率的完美平衡
vue3-composition-admin TypeScript最佳实践:类型安全与开发效率的完美平衡 【免费下载链接】vue3-composition-admin 🎉 基于vue3 的管理端模板(Vue3 TS Vuex4 element-plus vue-i18n-next composition-api) vue3-admin vue3-ts-admin 项目地址: http…...
15天深度体验:micro编辑器状态栏系统监控完全指南
15天深度体验:micro编辑器状态栏系统监控完全指南 【免费下载链接】micro A modern and intuitive terminal-based text editor 项目地址: https://gitcode.com/gh_mirrors/mi/micro micro编辑器是一款现代化的终端文本编辑器,以其直观易用和高度…...
避开Unity动态合批的坑:为什么你的Dynamic Batching不生效?
深度剖析Unity动态合批失效的六大技术陷阱与实战解决方案 当你在Unity项目中精心设计了数百个低多边形道具,却发现性能面板中的Draw Calls居高不下时,动态合批(Dynamic Batching)很可能正在暗中失效。本文将揭示那些官方文档未曾详…...
Unity WebGL输入优化:跨平台文本输入解决方案的技术突破
Unity WebGL输入优化:跨平台文本输入解决方案的技术突破 【免费下载链接】WebGLInput IME for Unity WebGL 项目地址: https://gitcode.com/gh_mirrors/we/WebGLInput 在Unity WebGL应用的开发过程中,文本输入功能一直是开发者面临的核心挑战。传…...
ImageSearch本地图片搜索引擎:从技术原理到实战应用
ImageSearch本地图片搜索引擎:从技术原理到实战应用 【免费下载链接】ImageSearch 基于.NET8的本地硬盘千万级图库以图搜图案例Demo和图片exif信息移除小工具分享 项目地址: https://gitcode.com/gh_mirrors/im/ImageSearch 价值定位:重新定义本地…...
