无法找到或加载Qt平台插件“windows”--cx_freeze(.exe)

5
我使用cx_freeze创建了一个.exe文件,并将我能够找到的所有.dll文件复制到包含该.exe文件的文件夹中。
问题是,我可以在我的计算机上完美地运行.exe文件,但是在另一台计算机上却无法使用相同的文件夹运行。我尝试了三台不同的计算机,都弹出错误消息“应用程序无法启动,因为无法在""中找到或加载Qt平台插件"windows"。
这真让我困惑,为什么这个问题存在于另一台计算机上,而在我的计算机上却不存在。
2个回答

18

我通过将“platforms”文件夹复制并粘贴到.exe文件夹中解决了这个问题。在我的情况下,由于我安装了Anaconda IDE,该文件夹的路径是Anaconda3/Library/plugins/platforms。

希望这能对你有所帮助。


1
老兄,我不知道为什么你没有更多的投票。经过3个小时的搜索,这就是让它工作的方法。谢谢! - k-war
请查看此帖子:https://github.com/ContinuumIO/anaconda-issues/issues/1270#issuecomment-355741716 - TocToc
我曾经在另一个Qt应用程序中遇到过这个问题,我确信这是问题所在,但它并没有清除错误消息。最后我意识到,直到我放置了适当的Qt5Core.dll、Qt5Gui.dll等文件,这个错误仍然会显示出来。因此,你不能按照它们出现的顺序解决这些错误……以防其他人遇到这篇文章时能够有所帮助。否则,这对我来说是正确的解决方案。 - Alan Spark
救了我!好的。 - keramat

3

我遇到了同样的错误,并用与其他帖子中提到的方法不同的方法解决了它。希望这能帮助未来的读者。

构建:

Windows 10(64位)Miniconda(使用Python 3.9.4)(包是从conda-forge渠道获取的)pyqt 5.12.3 VScode 1.56.2

我的情境:

我正在为一些嵌入式工作构建GUI应用程序。我有两台用于开发的机器(相同的操作系统和架构),其中一台没有网络连接。在打包环境并在离线机器上安装后,我遇到了你遇到的错误。

解决方案:

定位conda环境中的qt.conf文件。对于我来说:C:\Users"name"\miniconda3\envs"env_name"\qt.conf

确保路径正确。我需要更新“name”,因为这是旧机器剩下的东西。

希望这能帮助某人。


这对我没有解决问题,但它改变了错误信息,并且这是第一篇指向“qt.conf”文件的帖子。它显然嵌入了一些路径并导致了一些问题。我还尝试将带有Qt的conda环境移动到另一台没有互联网的电脑上。 - William
是的,稍微调整一下在 qt.conf 中设置路径,现在它可以工作了,非常感谢! - William
很高兴听到它有所帮助,我记得曾经为了弄清楚它而苦思冥想。 - Jesse T-P
也对我有用,天才!谢谢(背景:将环境压缩并解压到新主机。最好使用“pack”命令以确保文件夹正确解析) - Coder Dev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接