缺少MSVCP140.dll 我刚刚开发了C++的第一个程序,我想和我的一个朋友一起看。遗憾的是,当他试图打开exe时,会出现一个错误,显示“MSVCP140.dll丢失”。为什么这个问题发生了,他/我如何解决它? < P>这可能是C++运行库。因为它是一个DLL,所以它不包含在您的程序可执行文件中。您的朋友可以从Microsoft下载这些库。

缺少MSVCP140.dll 我刚刚开发了C++的第一个程序,我想和我的一个朋友一起看。遗憾的是,当他试图打开exe时,会出现一个错误,显示“MSVCP140.dll丢失”。为什么这个问题发生了,他/我如何解决它? < P>这可能是C++运行库。因为它是一个DLL,所以它不包含在您的程序可执行文件中。您的朋友可以从Microsoft下载这些库。,c++,windows,visual-studio-2015,C++,Windows,Visual Studio 2015,您朋友的电脑缺少您程序的运行时支持DLL: 这通常意味着你的朋友没有微软VisualC++的可重新分配。我当然假设您使用的是VC++而不是MingW或其他编译器。因为你的朋友没有安装VS,所以不能保证他安装了redist 让您的朋友下载运行时DLL(@Kay的答案),或者使用静态链接编译应用程序 在visual studio中,转到运行库上的项目选项卡->属性->配置属性->C/C++->代码生成,选择调试模式为/MTd,选择发布模式为/MT 这将导致编译器将运行时嵌入到应用程序中。可执行

您朋友的电脑缺少您程序的运行时支持DLL:


这通常意味着你的朋友没有微软VisualC++的可重新分配。我当然假设您使用的是VC++而不是MingW或其他编译器。因为你的朋友没有安装VS,所以不能保证他安装了redist


让您的朋友下载运行时DLL(@Kay的答案),或者使用静态链接编译应用程序

在visual studio中,转到运行库上的
项目选项卡->属性->配置属性->C/C++->代码生成
,选择调试模式为
/MTd
,选择发布模式为
/MT


这将导致编译器将运行时嵌入到应用程序中。可执行文件将大得多,但它运行时不需要运行时DLL。

这是应用程序在部署/设置过程中必须解决的问题之一,因为应用程序使用的并非所有内容都内置在操作系统中。看见请注意,如果应用程序是Windows存储应用程序,则商店会为您部署VisualC++的CRT。即使我安装了完整的VisualStudio 2015,我的PC也会遇到同样的错误。可再发行安装程序退出,表示已安装较新版本。有什么想法吗?请注意,您需要安装与DLL编译方式相匹配的vc redist版本(32对64位),而不是操作系统。您是否可以添加数字“hello world.exe”的动态和静态链接有多大?@Kay静态链接通常只包含所需内容,而不是库中的所有内容。可执行文件的大小增加将取决于使用了多少C运行时。实际上,不需要针对运行时的调试版本进行链接,除非您希望调试运行时库。如果您计划重新分发软件,请不要使用/MTd进行链接。可再发行安装程序中不包括调试运行时。