【问题标题】:The application failed too start because it could not find or load the Qt platform plugin ''windows"应用程序启动失败,因为它无法找到或加载 Qt 平台插件“windows”
【发布时间】:2020-04-13 19:43:36
【问题描述】:

规格:

  • Python 版本:3.4.3
  • 操作系统:Virtual Box w/ Windows Xp Version 2002 Service Pack 3
  • PyQt4:GPL_win-4.12.3

不幸的是,该应用需要在 XP 上运行,我需要使用特定版本的 PyQT4 和 python。

我使用以下内容构建可执行文件: pyinstaller --onefile app.py

当我尝试运行它时,我得到以下信息:

The application failed too start because it could not find or load the Qt platform plugin 'windows'.

已经有多个帖子涉及同样的问题,他们都建议在可执行文件旁边添加 .dll,如下所示:

app.exe
Qt5Core.dll
Qt5Gui.dll
Qt5Widgets.dll
/platforms/
 - qwindows.dll
 - qminimal.dll

这些 .dll 来自 Python\Lib\site-packages\PyQt4\pluginsPython\Lib\site-packages\PyQt4\plugins\platforms 文件夹。

我还尝试将 Python\Lib\site-packages\PyQt4\plugins\platforms 添加到我的环境路径中。

问题依旧

有什么想法吗?

【问题讨论】:

  • Qt5X.dll for PyQt4???
  • @eyllanesc 这就是 PyQt4 文件夹中显示的内容
  • 你确定吗?这些 dll 来自 Qt5,但 PyQt4 需要不兼容版本的 Qt4 dll。在您的 app.py 脚本中,您使用的是 PyQt4 还是 PyQt5?
  • @eyllanesc 我的 app.py 使用 PyQt4 ,我使用二进制安装程序安装了 PyQt4。
  • mmm,在cmd中执行:set QT_DEBUG_PLUGINS="1",然后你从CMD运行.exe:/path/of/app.exe,然后你应该会得到错误信息

标签: python pyqt pyqt4 exe pyinstaller


【解决方案1】:

原来我使用的二进制安装程序包含用于 PyQT5 的 .dll。我使用 PyQt4 .dlls 找到了正确的二进制安装程序,现在一切正常。

【讨论】:

    猜你喜欢
    • 2014-04-11
    • 2016-06-10
    • 2014-10-01
    • 2015-06-06
    • 1970-01-01
    • 2017-07-24
    • 1970-01-01
    • 2018-04-28
    • 1970-01-01
    相关资源
    最近更新 更多