&引用;缺少MSCVP140.dll“;及;缺少VCRUNTIME140.dll“;在另一台计算机上运行.exe文件时 我在微软Visual Studio C++中编写了一个程序,并使用了SFML来实现。我包含了程序需要的正确的.dll文件,并将它们复制到“Release”文件夹中。成功了。整个程序在我的计算机上运行得完美无缺,但当我试图在另一台计算机上运行它时,它说:缺少“MSVCP140.dll”和缺少“VCRUNTIME140.dll

&引用;缺少MSCVP140.dll“;及;缺少VCRUNTIME140.dll“;在另一台计算机上运行.exe文件时 我在微软Visual Studio C++中编写了一个程序,并使用了SFML来实现。我包含了程序需要的正确的.dll文件,并将它们复制到“Release”文件夹中。成功了。整个程序在我的计算机上运行得完美无缺,但当我试图在另一台计算机上运行它时,它说:缺少“MSVCP140.dll”和缺少“VCRUNTIME140.dll,c++,visual-studio-2015,C++,Visual Studio 2015,我搜索了这个程序的解决方案,总是听到“转到项目>项目设置>C/C++>代码生成>运行时库>切换到多线程(/MT)”。我用这个设置编译了这个项目,可执行文件的大小增加了,他们说这是正常的,因为不再有支持.dll的文件了 但当我再次尝试使用新的.exe时,它给出了完全相同的错误消息。如果不在计算机上安装一些-dll文件,是否还有其他方法可以解决此问题?MSDN中详细介绍了这一点。看 你真的有三个选择: 使用DLL的“集中式”版本。为此,您应该有一个运行VS 2015的vcredit_*.EXE软件

我搜索了这个程序的解决方案,总是听到“转到项目>项目设置>C/C++>代码生成>运行时库>切换到多线程(/MT)”。我用这个设置编译了这个项目,可执行文件的大小增加了,他们说这是正常的,因为不再有支持.dll的文件了


但当我再次尝试使用新的.exe时,它给出了完全相同的错误消息。如果不在计算机上安装一些-dll文件,是否还有其他方法可以解决此问题?

MSDN中详细介绍了这一点。看

你真的有三个选择:

  • 使用DLL的“集中式”版本。为此,您应该有一个运行VS 2015的
    vcredit_*.EXE
    软件包的安装程序,或者如果使用基于MSI的安装程序,您可以使用提供的MSM文件

  • 将所需的DLL复制为程序的一部分。这意味着您的安装程序或zip文件或任何具有EXE的文件也包括它所需的DLL。如果您想要“复制并运行”式部署,这是最佳选择,但请记住,DLL的所有安全服务现在都是您的问题

  • 使用静态链接。从安全性角度来看,这是最不理想的解决方案,实际上只应在编写安装程序的特定情况下使用,即安装应用程序的程序必须首先运行

您尚未指定目标计算机上运行的Windows版本。VS 2015不支持Windows 7 RTM,因为它不受支持,但它支持Windows 7 Service Pack 1以及Windows Vista Service Pack 2、Windows 8.x和Windows 10

在讨论这个问题时,请注意Windows 8.0也不受支持。这些用户需要升级到Windows 8.1 Update或Windows 10


您只需在另一台计算机上为您的visual studio版本安装适当的vcredist(一个可下载并运行的可执行文件)。@crashmstr谢谢,我会尝试的。但是有没有一种方法可以在不安装任何东西的情况下运行exe?伙计,非常感谢,这两个错误现在已经消失了,但是现在出现了下一个问题:“应用程序无法正确启动(0xc00007b)”。我尝试在Windows10上运行它,但不知道这是否是唯一一个发生此错误的操作系统。我对此表示怀疑。你知道如何解决这个问题吗?你应该设置一个调试会话来找出发生了什么。这对我没有任何帮助。还有其他想法吗?你的程序是为调试还是发布而构建的?发布。我也在使用sfml。