onekeydiag/onekeydiag.spec
2025-08-27 15:53:01 +08:00

66 lines
1.8 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# -*- mode: python ; coding: utf-8 -*-
import os
import sys
from PyInstaller.utils.hooks import collect_data_files
block_cipher = None
# 获取spec文件所在目录项目根目录
spec_dir = os.path.dirname(os.path.abspath(sys.argv[0]))
# 定义需要打包的资源文件
resource_files = [
# 将resource文件夹下的所有文件打包到程序内的resource目录
(os.path.join(spec_dir, 'resource'), 'resource')
]
# 收集PyQt相关的数据文件
# qt_data = collect_data_files('PyQt5')
# 合并所有资源文件
# all_resources = resource_files + qt_data
all_resources = resource_files
# 定义所有需要打包的文件和依赖
a = Analysis(
['./src/main.py'], # 程序入口文件
pathex=['./'], # 工程根目录(确保能找到子模块)
binaries=[],
# 配置资源文件(子模块会自动识别,主要配置非.py文件
datas=all_resources,
# 隐藏依赖(若打包后提示缺少模块,添加在这里)
hiddenimports=[
],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[], # 排除不需要的模块(减小体积)
noarchive=False,
cipher=block_cipher,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='OneKeyDiag', # 生成的EXE文件名
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True, # 启用压缩(推荐)
upx_exclude=[],
runtime_tmpdir=None,
console=False, # 隐藏控制台GUI程序
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
version='version.info',
# 指定程序图标使用resources文件夹中的ico文件
icon=os.path.join(spec_dir, 'resource','favicon.ico'),
)