这是我的 cx_Freeze setup.py 文件
import sys
from cx_Freeze import setup, Executable
import os
os.environ['TCL_LIBRARY'] = r"C:\Users\Admin\AppData\Local\Programs\Python\Python35-32\tcl\tcl8.6"
os.environ['TK_LIBRARY'] = r"C:\Users\Admin\AppData\Local\Programs\Python\Python35-32\tcl\tk8.6"
build_exe_options = {"packages":["os"], "includes" : ["tkinter"]}
base = None
if sys.platform == "win32":
base = "Win32GUI"
setup(name='APS West Email Generator',
version='1.0',
description='Auto generates Alarm notification emails. And maybe more in the future.',
options = {"build_exe": build_exe_options},
executables = [Executable("Tool_EmailGenerator.py", base=base)])
生成的可执行文件没有错误。但是当我尝试运行它时,我看到以下窗口:
标题:cx_Freeze:主脚本中出现 Python 错误
内容: 回溯(最近一次调用最后一次): 文件 “c:\Users\Admin\AppData\Local\Programs\Python\Python35-32\lib\site-packages\cx_Freeze\initscripts__startup__.py”,第12行,在导入(名称+“初始化”) 文件 “c:\Users\Admin\AppData\Local\Programs\Python\Python35-32\lib\site-packages\cx_Freeze\initscripts\Console.py”,第 21 行,在 scriptModule=import(模块名称) 文件“Tool_EmailGenerator.py”,第 2 行,位于 文件 “c:\Users\Admin\AppData\Local\Programs\Python\Python35-32\lib\tkinter__init__.py”,第 35 行,在 import_tkinter #如果失败,你的 python 可能没有为 Tk 配置 ImportError: DLL 加载失败: 找不到指定的模块。
当我运行 cx_Freeze 之前的 py 文件时,tkinter 可以工作。我在互联网上搜索并尝试了各种建议。到目前为止没有任何效果。我不确定是什么原因造成的。
最佳答案
成功解决了这个问题。 而不是这样做: “包括”:[“tkinter”], 我将 tkinter 添加到包中。 所以:“packages”:[“os”,“tkinter”] 这似乎有效
关于python - 运行使用 cx_Freeze 生成的可执行文件给出回溯错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41573770/