- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 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/
我是一名优秀的程序员,十分优秀!