2013-02-19 94 views
2

嗨我试图从调试文件夹执行我的.exe文件。未能加载平台插件“窗口”可用的平台是:Windows,最小

现在在你告诉我关于所有其他相关文章之前,Ive看着他们,他们的解决方案并没有帮助我解决问题。

确定首先关闭使用Qwt库的Im并尝试创建一组压力表。我现在有一个衡量标准,现在我需要从.exe执行它。

我试着在我的目录中添加平台文件夹,并添加windowsd.dll和minimald.dll,但仍然无法正常工作。
请告诉我的任何行动,这让我难住。

另外一个职位说创建一个qt.conf文件,并将其放置在目录中,但我无法找到如何制作一个.conf文件。

更新 错误读取 调试错误! 计划: ...集结Desktop_Qt_5_0_1_MSVC2010_32bit-调试\调试\ gauge.exe 模块:5.0.1 文件:内核\ qguiapplication.cpp 线:781

无法加载插件平台 “窗口”。可用的平台如下: minimal Windows

+0

您能分享错误消息的确切文本吗? – 2013-02-19 18:53:15

+0

我将错误添加到了我的问题中。 – codingNightmares 2013-02-19 19:51:29

+0

听起来像问题是一个DLL加载问题。首先,我会使用依赖关系walker来确保您拥有所有的DLL依赖关系。错误是因为Qt从'QPlatformIntegrationFactory :: create(name,platformPluginPath)'得到了一个空结果,这意味着Windows集成平台DLL不在你的platformPluginPath – 2013-02-19 20:02:00

回答

1

在Windows上部署Qt时,必须从Qt目录的bin文件夹复制大量dll。

在我的系统,它是:

C:\Qt\4.8.4\bin

后您复制所有必需的dll的从那里,像QtCore4.dllQtGui4.dll,如果你使用的是像声子或JPEG文件格式支持任何额外的插件,你需要从插件文件夹上复制这些dll的:

C:\Qt\4.8.4\plugins

比如我做一个文件夹中的文件夹在我的exe文件称为imageformats,我把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

希望有所帮助。

0

如果您有多个可执行文件和\或者你不想用手工复制的插件,你可以创建一个qt.conf文件与路径插件目录

[Paths] 
Plugins = PATH_TO_QT_DIR/plugins 

您需要将qt的。 conf文件可执行文件的位置。
有关更多信息,请致电http://doc.qt.io/qt-5/qt-conf.html