Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在visual studio中调试Qt时,缺少msvcp140d_app.dll_C++_Qt_Visual Studio 2017 - Fatal编程技术网

C++ 在visual studio中调试Qt时,缺少msvcp140d_app.dll

C++ 在visual studio中调试Qt时,缺少msvcp140d_app.dll,c++,qt,visual-studio-2017,C++,Qt,Visual Studio 2017,我不熟悉Qt,但在Visual studio中从事C/C++开发已有几年了。现在我正试图为我的项目构建一个GUI。我在我的工作电脑和家用电脑上都安装了Qt5.11.0和QtVS工具。在工作中,我可以用VS调试器构建和运行我的项目,但是在我的家用系统上,我可以构建,但不能用VS调试器运行,也不能简单地启动应用程序。我试着在释放和它运行良好 我得到的错误是: 代码执行无法继续,因为找不到VCRUNTIME140D_APP.dll 我得到了其中的4,前两个想要VCRUNTIME,后两个想要MSVCP1

我不熟悉
Qt
,但在Visual studio中从事C/C++开发已有几年了。现在我正试图为我的项目构建一个
GUI
。我在我的工作电脑和家用电脑上都安装了
Qt
5.11.0
Qt
VS工具。在工作中,我可以用VS调试器构建和运行我的项目,但是在我的家用系统上,我可以构建,但不能用VS调试器运行,也不能简单地启动应用程序。我试着在释放和它运行良好

我得到的
错误是:

代码执行无法继续,因为找不到VCRUNTIME140D_APP.dll

我得到了其中的
4
,前两个想要VCRUNTIME,后两个想要
MSVCP140D_APP.dll

到目前为止我已经尝试过的解决方案:

  • 已卸载Win SDK并重新安装
  • 已卸载VS2017和SDK并重新安装
  • 搜索System32、SysWOW64和VS安装目录-找到
    msvcp140d.dll
    vcruntime140d.dll
    ,但没有
    \u app.dll
  • 有人知道这些都包括在什么地方吗?我不明白为什么我把它们放在工作电脑上而不是家里。我在两个系统上都有相同的VS更新、相同的Qt版本和SDK

    使用:

    • Visual Studio 2017 v15.7.1
    • Qt 5.11.0-msvc2017_64
    我想我可以从我的工作电脑上复制
    .dll的
    ,然后把它们放到另一台电脑上的适当位置,但是我想知道它们应该安装在什么地方,这样我就可以在两个系统上进行相同的设置

    编辑: 我还尝试使用Qt版本msvc2015_64和winrt_x64_msvc2015将平台工具集更改为VS2015

    我找到了
    \u app.dll
    文件。那里没有任何答案,这就是为什么我试图重新安装SDK,希望丢失的文件包括在那里

    编辑2:
    我只是在工作时扫描了我的整个系统,结果发现那里也没有丢失的
    .dll
    。这告诉我,两者在项目属性或配置上存在差异。我使用git进行源代码管理,目前我是这个项目的唯一贡献者。当我尝试构建并运行《入门指南》中的示例时,我在家里遇到了同样的问题,即缺少
    \u app.dll
    文件,但它在工作中工作正常。我现在完全糊涂了,任何提示都非常感谢。

    解决方案:

    在尝试了几个小时制作新的解决方案等之后,我决定删除整个构建文件夹,并将所有依赖项的新副本放入其中。我的项目现在在调试模式下运行良好


    我相当肯定,当我最初将Qt
    .dll
    文件复制到其中时,我一定是从winrt文件夹而不是msvc2017_64文件夹中获取了它们。为了测试,我用winrt_x64_msvc2017文件夹中的文件替换了正在工作的
    .dll
    文件,并再次确认了相同的错误。所以,这对我来说是一个愚蠢的错误,但希望它能在将来为其他人省去很多麻烦。

    问得好,回答得好!!