【发布时间】:2022-11-12 23:16:32
【问题描述】:
使用cx_freeze 将我的ttkbootstrap 项目文件转换为exe 后。
当我运行 executable 文件时。我得到这个错误,我的program 没有执行。
File "C:\Users\KANWAR\AppData\Local\Programs\Python\Python310\Lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 120, in run
module_init.run(name + "__main__")
File "C:\Users\KANWAR\AppData\Local\Programs\Python\Python310\Lib\site-packages\cx_Freeze\initscripts\Console.py", line 16, in run
exec(code, module_main.__dict__)
File "main.py", line 207, in <module>
File "C:\Users\KANWAR\AppData\Local\Programs\Python\Python310\lib\site-packages\ttkbootstrap\window.py", line 273, in __init__
self._style = Style(themename)
File "C:\Users\KANWAR\AppData\Local\Programs\Python\Python310\lib\site-packages\ttkbootstrap\style.py", line 488, in __init__
localization.initialize_localities()
File "C:\Users\KANWAR\AppData\Local\Programs\Python\Python310\lib\site-packages\ttkbootstrap\localization\msgs.py", line 9, in initialize_localities
m.initialize()
File "C:\Users\KANWAR\AppData\Local\Programs\Python\Python310\lib\site-packages\ttkbootstrap\localization\msgs.py", line 27, in initialize
MessageCatalog.set_many(self.locale, *messages)
File "C:\Users\KANWAR\AppData\Local\Programs\Python\Python310\lib\site-packages\ttkbootstrap\localization\msgcat.py", line 142, in set_many
return int(root.tk.eval(out))
_tkinter.TclError: invalid command name "::msgcat::mcmset"
在我的script 中,我包含了以下库文件。
from ttkbootstrap import *
from ttkbootstrap.constants import *
from ttkbootstrap.dialogs.dialogs import Messagebox
我每次都面临这个问题。请问有什么解决办法吗。
这是我的setup.py
from cx_Freeze import setup, Executable
import sys
base = None
if (sys.platform == "win32"):
base = "Win32GUI" # Tells the build script to hide the console.
setup(name = "e_mail",
version = "0.1",
description = 'PURF BY KANWAR ADNAN',
executables = [Executable(r"main.py")]
)
【问题讨论】: