【问题标题】:QT Application doesn't work on Windows explorer?QT 应用程序在 Windows 资源管理器上不起作用?
【发布时间】:2012-01-14 11:00:46
【问题描述】:

如何在 Windows 资源管理器上执行 QT 应用程序。我刚刚下载了它,所以当我通过 QT 创建器运行应用程序时,我仍然是 QT 的新手,它工作正常,但是当我在 Windows 资源管理器上执行它时 (\QT\testingGUI-build-desktop-Qt_4_8_0__4_8_0__Release\release

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

回答

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

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

http://www.dependencywalker.com/

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

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

现在例子QtGui4.dll -> 释放.dll(这个比较小) QtGui*d*4.dll -> 调试.dll(这个比较大所以不要用 此库文件用于部署您的应用程序)

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

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

    • 难道没有通过 QT Creator 自动执行此操作的流程吗?
    • 当那是问题时,它不是说找不到'这样那样'的dll吗? Afaik,确实如此,OP 说没有错误消息,这就是我感到困惑的原因。
    • 好吧,它什么也没说。我可以看到它在任务管理器上运行,但它会在几秒钟内消失。我所能做的就是通过 QT 创建器运行它。
    • 谢谢你说的是对的,但你的问题还不足以解决问题。
    • AFAIK 在 QtCreator 中没有自动执行此操作的过程,但您当然可以自己创建部署构建步骤。另见How to deploy my application using Qt-Creator?How can i add custom build steps in Qt-Creator?
    猜你喜欢
    • 2013-12-04
    • 1970-01-01
    • 2019-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多