【问题标题】:Why can I not open my Python app after converting to .exe?为什么我在转换为 .exe 后无法打开我的 Python 应用程序?
【发布时间】:2022-01-11 23:13:35
【问题描述】:

我有一个带有 Tkinter GUI 的 Python 应用程序。它作为 Python 程序运行良好。然后我使用 PyInstaller 将其转换为 .exe:

pyinstaller --onefile -w 'AttnyDistApp.py'

这很好,但是当我尝试打开我的应用程序时,我收到以下错误消息:

但 GUI 不会连接到数据库 - 只有在用户单击按钮之后。

【问题讨论】:

  • 错误消息看起来很清楚,很可能您错了,代码确实在错误出现之前尝试创建数据库连接。我们无法确定,因为您没有共享任何代码。
  • 好吧,我发现这是因为我在创建 GUI 之前运行了以下命令: from pyzipcode import ZipCodeDatabase zcdb = ZipCodeDatabase() 但我仍然不知道为什么这不起作用当我将其转换为 .exe 时正确

标签: python tkinter pyinstaller


【解决方案1】:

您的问题可能是因为ZipCodeDatabase 尝试加载 PyInstaller 未包含的数据库。您需要找出它试图打开的文件并修改 PyInstaller 的配置以包含该非代码文件。 PyInstaller 非常擅长查找它需要包含的所有代码,但数据和二进制文件经常被遗漏。

来自pyzipcodedocumentation:“这个包将允许你获取邮政编码信息。这个包中使用的数据可以从“-你应该包括你自己下载的文件,或者有你的代码检查数据是否可用,如果不可用,请在打开数据库之前从代码中下载。

【讨论】:

    猜你喜欢
    • 2021-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-31
    • 2021-10-03
    相关资源
    最近更新 更多