【问题标题】:failed to load platform plugin "windows" Available platforms are: windows, minimal无法加载平台插件“windows”可用的平台是:windows、minimal
【发布时间】:2013-02-04 12:16:41
【问题描述】:

您好,我正在尝试从调试文件夹执行我的 .exe 文件。

现在,在您告诉我所有其他相关文章之前,我已经查看了所有其他相关文章,但他们的解决方案对我的问题没有帮助。

好的,首先我使用 Qwt 库并尝试创建一组仪表。我的仪表现在可以工作了,我需要让它从 .exe 中执行。

我尝试在我的目录中添加平台文件夹并添加 windowsd.dll 和 minimumd.dll 但仍然无法正常工作。
请就这让我难过的任何行动方案提出建议。

还有一篇文章说要创建一个 qt.conf 文件并将其放在目录中,但我不知道如何制作一个 .conf 文件。

更新 错误读取 调试错误! 程序: ...build-Desktop_Qt_5_0_1_MSVC2010_32bit-Debug\debug\gauge.exe 模块:5.0.1 文件:kernel\qguiapplication.cpp 线路:781

无法加载平台插件“windows”。可用平台有: 最小的 窗户

【问题讨论】:

  • 你能分享错误消息的确切文本吗?
  • 我将错误添加到我的问题中。
  • 听起来问题是 DLL 加载问题。首先,我将使用依赖项遍历器来确保您拥有所有 DLL 依赖项。出现错误是因为 Qt 从QPlatformIntegrationFactory::create(name, platformPluginPath) 得到空结果,这意味着 Windows 集成平台 DLL 不在您的 platformPluginPath 中
  • 使用windeployQt

标签: c++ qt qwt


【解决方案1】:

在 Windows 上部署 Qt 时,您必须从 Qt 目录的 bin 文件夹中复制多个 dll。

在我的系统上是:

C:\Qt\4.8.4\bin

从那里复制所有必需的 dll 后,如 QtCore4.dllQtGui4.dll,如果您使用任何其他插件,如 phonon 或 jpeg 支持,您需要从插件文件夹中复制这些 dll:

C:\Qt\4.8.4\plugins

例如,我在文件夹中创建了一个名为imageformats 的exe 文件夹,并将qjpeg4.dll 放入该文件夹中。

就 Qwt 的工作而言,您可能需要执行类似的过程来将这些 dll 公开给您的 exe,并将它们放在与您的 exe 相同的文件夹中。

上面列出的 dll 用于您的 exe 的“发布”版本。如果您正在运行“调试”版本,它将查找 <dll_name>d.dll

放置这些路径的原因与 windows 使用的库搜索顺序有关。

Qt, Phonon and multimedia codecs: how to bundle them?

http://msdn.microsoft.com/en-us/library/windows/desktop/ms682586%28v=vs.85%29.aspx

http://qt-project.org/doc/qt-4.8/deployment-windows.html#creating-the-application-package

希望对您有所帮助。

【讨论】:

    【解决方案2】:

    如果您有多个可执行文件并且\或者您不想手动复制插件,您可以创建一个 qt.conf 文件,其中包含插件目录的路径

    [Paths]
    Plugins = PATH_TO_QT_DIR/plugins
    

    您需要将 qt.conf 文件放在可执行文件所在的位置。
    更多信息http://doc.qt.io/qt-5/qt-conf.html

    【讨论】:

      猜你喜欢
      • 2013-07-15
      • 2013-06-26
      • 1970-01-01
      • 1970-01-01
      • 2014-01-04
      • 2017-03-01
      • 1970-01-01
      • 2016-11-16
      • 2022-01-26
      相关资源
      最近更新 更多