0

我们正在部署一个使用 VS2010 构建的 Qt5.0.2 应用程序,其中包含platforms/qwindows.dllbin 目录中的文件。我们刚刚从 Qt5.0.1 升级到 Qt5.0.2,发现在非开发机器上,我们的应用程序在加载后立即崩溃。我们将问题缩小到 qwindows.dll 文件。当我们使用 Qt5.0.2 中的 qwindows.dll 版本(文件大小 803kb)时,应用程序崩溃。当我们保留所有其他包含的 dll 相同但仅将 qwindows.dll 替换为 5.0.1 版本 (799kb) 时,一切正常。这是一个已知的错误?为了使 5.0.2 版本的 dll 正常工作,我们还需要包含其他内容吗?

4

1 回答 1

0

回答我自己的问题...

我们有一个批处理脚本,它自动将相关的预构建 qt dll 从最新下载的 qt 包目录的子目录复制到我们应用程序的安装目录中vs2010。似乎在 Qt5.0.1 中,Qt dll 出现在libbin子目录中msvc2010,而在 Qt5.0.2 中,Qt dll 仅出现在bin子目录中。由于我们自动从lib子目录复制 dll,当我们迁移到 5.0.2 时,没有任何内容被复制,旧的 5.0.1 dll 仍保留在应用程序的安装目录中。但是,该qwindows.dll文件仍然位于,msvc2010\plugins\platforms因此它确实得到了更新,并且与旧的 5.0.1 dll 不兼容。

我不认为我们对下载的 Qt 安装做了什么有趣的事情,但如果其他下载了 5.0.1 和 5.0.2 的人能够独立验证 5.0.1 和 5.0.2 中是否有 dll,我将不胜msvc2010\lib directory感激没有。

于 2013-07-18T08:00:45.400 回答