我们正在部署一个使用 VS2010 构建的 Qt5.0.2 应用程序,其中包含platforms/qwindows.dll
bin 目录中的文件。我们刚刚从 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 正常工作,我们还需要包含其他内容吗?
问问题
2088 次
1 回答
0
回答我自己的问题...
我们有一个批处理脚本,它自动将相关的预构建 qt dll 从最新下载的 qt 包目录的子目录复制到我们应用程序的安装目录中vs2010
。似乎在 Qt5.0.1 中,Qt dll 出现在lib
和bin
子目录中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 回答