【最佳实践】py文件需要调用exe文件和dll文件,如何打包成exe文件

(最佳实践):创建一个库文件夹

当依赖的 DLL 数量较多时,最好的方法是把它们统一管理起来。

第一步:整理项目结构

  1. 在你的项目文件夹 my_app 中,创建一个新的子文件夹,比如叫 libsdlls
  2. 将你找到的所有 helper.exe 依赖的 DLL 文件,全部复制 到这个 libs 文件夹里。

现在你的项目结构看起来像这样:

复制代码
my_app/
├── main.py        # 你的主 Python 脚本
├── helper.exe     # 你需要调用的外部程序
└── libs/          # 存放所有必需的 DLL
    ├── magic.dll
    ├── another.dll
    └── more_dlls.dll

第二步:打包整个文件夹

现在,你只需要用一个 --add-binary 命令把整个 libs 文件夹打包进去。

打包命令:

bash 复制代码
pyinstaller --onefile --add-data "helper.exe;." --add-binary "libs;." main.py

命令解释:

  • --add-binary "libs;.":
    • libs: 源文件夹。
    • .: 目标文件夹(根目录)。
    • 这个命令的效果是:PyInstaller 会将 libs 文件夹里的所有文件都提取出来,放到打包后程序的根目录中。

这样可以正常执行,但是会有运行黑窗口出现,加一个-w就行

bash 复制代码
pyinstaller --onefile --add-data "helper.exe;." --add-binary "libs;." -w main.py


会生成两个文件夹,builc和dist,生成的exe文件在dist中。

遵循这个指南,你就能可靠地将带有复杂依赖的外部程序和你的 Python 脚本一起打包成一个独立的 .exe 文件了。祝你打包成功!

相关推荐
佳&弥6 分钟前
后渗透痕迹清理
服务器·windows·web安全·网络安全
MSTcheng.32 分钟前
【Linux学习】Linux学习第四弹——Linux基本指令3
linux·windows·学习·操作系统·指令
霸道流氓气质2 小时前
MyBatis 与 SQL 层面关键技术详解
windows·sql·mybatis
一直走下去-明2 小时前
在 Windows 上安装 uv
windows·uv
Lost of 程序猿2 小时前
C# 12 / .NET 9 新特性机制深度:编译器替你写了什么,哪些糖吃下去会出事
windows·c#·.net
编程的一拳超人15 小时前
DeepSeek Harness Linux/macOS/Windows 本地下载、启动与模型配置指南
linux·windows·macos·deepseek
AIGC小尼15 小时前
Windows 本地 AI 漫剧全自动生产线部署完整教程(零基础、全指令、带源码、模型配置、排错方案)
人工智能·windows·ai漫剧
运维全栈笔记18 小时前
Windows 安装 WSL2 并运行 Ubuntu 24.04 指南
linux·网络·windows·ubuntu
我命由我1234520 小时前
Windows 操作系统 - 启用 D 盘虚拟内存
java·运维·服务器·windows·学习·java-ee·运维开发
Beyond_System|系统之外21 小时前
Windows 10/11 安装与配置 Zig 0.13.0:从下载到编译验证的完整教程
windows·编译工具