2013-08-21 78 views
8

我一直在google搜索解决这个问题,但我发现很多人分享我的问题,没有一个他们的解决方案为我工作。部署Qt的C++应用程序从Visual Studio qwindows.dll错误

我使用Visual Studio 2010编写了一个使用Qt框架的C++应用程序。我从Visual Studio构建并运行“释放”模式的应用程序而没有问题,但是当我将该文件夹从Release文件夹复制到新的目的地时它的新PC)它无法运行提供此错误:

--------------------------- 
TestApplication 
--------------------------- 
This application failed to start because it could not find or load the Qt platform plugin "windows". 

Available platform plugins are: windows. 

Reinstalling the application may fix this problem. 

内可执行文件的目录,我有以下文件结构:
./TestApplication.exe
./libGLESv2.dll
./Qt5Core .dll
./Qt5Gui.dll
./QtWidgets.dll
./platforms/qwindows.dll
./qt.conf

所有的DLL文件从在库所在的文件夹Qtbase的5.0.0编译的Qt的拍摄。

的qt.conf文件是:

[Paths] 
Plugins=. 

没有它,发布错误是一样的,除了它说:“最小”和“屏幕外”可用平台以及。

对于所有其他人遇到这个错误似乎要通过创建platforms文件夹,并把在qwindows.dll来解决。但这样做本身并不会改变任何行为。

有什么我做错了?也许我首先生成.exe的方法是错误的?

+0

你是否按照[deployment](http://qt-project.org/doc/qt-5.0/qtdoc/deployment-windows.html)中的所有步骤操作? –

回答

9

如果使用libGLESv2.dll,那么必须包含libEGL.dll了。 你不能在depends.exe中看到,不知道Qt开发者如何设法隐藏这个。 如果你的Qt开箱即用,那么即使你不使用OpenGL,这两个Dll也是必需的。另外,如果你的Qt是开箱即用的,你还需要包含三个包含Unicode处理信息的ic * .dll。

+0

添加该DLL修复了错误消息'此应用程序无法启动,因为它无法找到或加载Qt平台插件“窗口”',我正在获取。 – Phil

2

可以看到哪些DLL被通过查看其运行Qt Creator中调试(F5)当那些被调用需要。 = Carl

+0

有趣的是,我正在使用Visual Studio插件进行开发,但在下一次我遇到依赖关系问题时会查看此选项。 – Grambot

相关问题