v1.0.3 · Windows 打包修复
Windows 打包修复
本版本修复 v1.0.2 Windows FlowInvoice.exe 启动时报 No module named 'tkinter' 的打包问题。
修复
- 修复 PyInstaller 构建环境中 Tcl/Tk 路径不可用导致的
tkinter缺失问题。 app.spec增加构建前 fail-fast 检查:如果tkinter无法实际创建 Tk 窗口,直接拒绝生成FlowInvoice.exe,避免再次发布坏包。- 支持通过
FLOWINVOICE_TCL_ROOT指向 ASCII 路径下的 Tcl/Tk 目录,解决 Windows 用户路径含中文时 Tcl 路径解析失败的问题。
验证
- 不设置 Tcl/Tk 修复路径时,PyInstaller 构建会按预期失败,不再生成坏包。
- 设置
FLOWINVOICE_TCL_ROOT=C:\Temp\flowinvoice-tcl后,tkinter.Tk()验证通过,Tcl 版本8.6.12。 - PyInstaller 构建日志包含
hook-_tkinter.py和pyi_rth__tkinter.py,且warn-app.txt未出现tkinter缺失。 python -m unittest tests.test_processor_regressions -v:8/8 通过。python -m py_compile config.py core/processor.py app.py web_app.py tests/test_processor_regressions.py app.spec:通过。FlowInvoice.exe启动 10 秒未退出,未出现Unhandled exception in script异常窗口。
发布资产
FlowInvoice.exe:Windows 桌面版单文件程序,大小157,312,451字节。