QT应用程序在Windows资源管理器上不起作用?

时间:2012-01-14 11:00:47

标签: c++ qt qt-creator windows-explorer

如何在Windows资源管理器上执行QT应用程序。我刚刚下载了它,所以当我通过QT创建器运行应用程序时,我仍然是QT的新手它工作正常但是当我在Windows资源管理器上执行它时 (\ QT \ testingGUI-build-desktop-Qt_4_8_0__4_8_0__Release \ release< -in this folder) 它不起作用,没有错误,没有任何消息。

好吧我想出了如何解决这个问题。

答案

如果有人遇到此问题,请按照以下步骤进行操作,如果相关缺少库,则可以解决问题。

发布称为部署的应用程序的过程。虽然您可以通过QT创建者运行您的应用程序,但是如果相关库(.dll)文件没有驻留在您的应用程序所在的文件夹(.exe)中,则可能无法在Windows资源管理器(或QT创建者之外)上运行它所以你要做的就是将那些相关的库(.dll)文件复制并粘贴到你的应用程序所在的文件夹中。但你怎么知道需要哪些库文件?找出与应用程序链接的库文件

http://www.dependencywalker.com/

使用此软件,运行您的应用程序并找出是否有任何错误消息(它表示黄色/红色)缺少的库文件显示在第二个窗口(底部) 可能有很多但不是所有库文件都需要因为我认为它足以复制 - >粘贴主库。

然后转到QT库存储库 Qt \ 4.8.0 \ bin(如果你不记得确切的地方,请在Windows资源管理器上搜索) 这是QT存储所有库文件的地方。复制所有相关的库文件并粘贴到您的应用程序所在的目录中。确保不复制粘贴调试所需的库文件。

  

现在示例QtGui4.dll - >释放.dll(这个相对较小)   QtGui * d * 4.d​​ll - >调试.dll(这个比较大,所以不要使用   这个用于部署应用程序的库文件)

不要忘记d因为它表示库文件用于调试阶段。 所以你不需要将它用于已经发布的应用程序。

1 个答案:

答案 0 :(得分:3)

Qt DLL可能不在你的PATH中。您也可以简单地将所需的Qt DLL复制到您的发布目录。