c++ - 我需要分发哪个版本的可再发行版本?

标签 c++ mfc version backwards-compatibility redistributable

两个相关问题:

  1. 我有一个想要分发的 32 位 MFC 程序,并且希望它在 32 位或 64 位 Windows 下运行。我是否可以只包含 x86 可再发行组件,因为我的程序是 32 位,还是需要同时包含 x86 和 x64 可再发行组件,因为用户计算机可能运行 32 位或 64 位 Windows?
  2. 虽然我的代码是使用 VS2017 编译的,但我必须包含一个我怀疑可以追溯到 2010 年左右的外部 DLL。我是否需要包含旧版本 VS 的可再发行文件,或者最新版本是否包含所有以前的版本?具体来说,用户报告说,在安装我的应用程序(包括 VS2017 x86 可再发行组件)后,我的应用程序无法运行,并显示消息“msvcp110.dll 丢失”。 谢谢你的帮助。我希望能够使用一台干净的 Windows 计算机来进行尝试,但我没有。

最佳答案

  1. 您只需要 32 位可再发行版。它们在 64 位机器上运行良好,这与执行需要 64 位 CPU 的 64 位代码不同。

  2. 如果此 DLL 需要可再发行组件,则您也需要提供它。 VS2017 仅支持 VS2015 可再发行版本,不支持之前的版本。对于VC110,似乎是VS2012。

关于c++ - 我需要分发哪个版本的可再发行版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52990595/

相关文章:

swift - Cocoapods - 使用 Swift 3.0 编译的模块无法在 Swift 3.0.1 中导入

c++ - 为什么 std::bitset::size 是非静态的

C++类派生与超构造函数混淆

c++ - 在 MFC 中使用编辑框处理 slider 控件

c++ - CListCtrl。当双击总是收到 NM_CLICK + NM_DBLCLK

visual-c++ - 从 CStringArray 的元素获取可修改的 TCHAR*

数据库版本控制

c++ - 为什么 GetProcAddress 不起作用?

c++ - C++ 内存泄漏检查中的 Valgrind 错误

android - PhoneGap Android 获取应用版本代码