首页 > 解决方案 > 分发原始 msvcp.dll 或安装 vc_redist.exe

问题描述

部署使用 MSVC 编译的应用程序,我应该包括从 VC 文件夹复制粘贴的 msvcp140.dll 和 vcruntime140.dll 与其他 .dll,还是分发 vc_redist.exe 安装程序,在每台用户计算机上安装环境?

什么是“正确”的方法,为什么?

标签: c++windowsvisual-studiodeployment

解决方案


对于这种情况,没有经验法则或“正确方法”,而是选择一个而不是另一个的利弊。在我看来,这取决于产品/文件的部署方式。

  • 如果文件未安装(从 zip 中提取或在安装程序之前运行),则将必要的 redist 放在同一文件中就足够了。可能是静态链接更好(?)
  • 如果一切都是通过安装程序安装的,那么安装可再发行组件是一种更清洁的方式。已经有 可用于与安装程序甚至独立可执行文件集成的合并模块

不建议将必要的文件放在可以运行安装程序的文件夹中,因为使用每个较新版本(编译器和产品)更容易维护/更新 redist 文件


推荐阅读