首页 > 解决方案 > Qt 应用程序在发布时挂起,在调试中找不到 vcruntime140.dll,但我的项目使用的是 VS2017

问题描述

我制作的应用程序有问题,它在大多数计算机上都能完美运行,但只有少数计算机。

我尝试制作最简单的 Qt 项目(只是一个窗口)并使用 windeployqt.exe 部署它,以确保我不会错过任何东西,等等,在同一台计算机上出现同样的问题,它在加载时永远挂起释放模式。之后我尝试向他发送一个调试版本,它触发了一个未找到的 vcruntime140.dll。

棘手的是我使用的是 Qt Desktop 5.14.2 MSVC2017 64bit 所以我无法想象为什么它要求 vcruntime140 (vs2015) 也试图手动安装 vs2015 redist windows 失败,因为已经存在更新的版本。

谢谢你的任何提示,这让我发疯了!

标签: visual-studioqtdeploymentvisual-studio-2015

解决方案


windeployqt在部署文件夹中包含vc_redist.<arch>可执行文件,当我将应用程序部署到其他 Windows PC 时,有时我会收到vcruntime140.dll其他 MS Visual C++ 可再发行 DLL的错误声明vc_redist.x64.exe。解决了; 我理解目标PC可能已经有更新版本的redistrib..但我一直认为更新的通常是向后兼容的..,但我认为Qt包含应用程序所需的正确redisreb作为它的编译位置。


推荐阅读