gpt4 book ai didi

c++ - 在另一台计算机上运行 .exe 文件时出现 "Missing MSCVP140.dll"和 "Missing VCRUNTIME140.dll"

转载 作者:行者123 更新时间:2023-11-30 02:31:46 28 4
gpt4 key购买 nike

我在 Microsoft Visual Studio C++ 中编写了一个程序,并为此使用了 SFML。我包含了程序所需的正确的 .dll 文件,并将它们复制到“发布”文件夹中。有效。整个程序在我的电脑上运行完美,但是当我试图在另一台电脑上运行它时,它说:Missing "MSVCP140.dll" and Missing "VCRUNTIME140.dll.

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

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

最佳答案

这在 MSDN 上有一些详细介绍。参见 Deployment in Visual C++

你真的有三个选择:

  • 使用 DLL 的“集中式”版本。为此,您应该有一个安装程序来运行 VS 2015 的 VCREDIST_*.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。

While we are on the subject note that Windows 8.0 is also out of support. Those users need to upgrade to Windows 8.1 Update or Windows 10.

关于c++ - 在另一台计算机上运行 .exe 文件时出现 "Missing MSCVP140.dll"和 "Missing VCRUNTIME140.dll",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37216181/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com