Visual Studio 2015 link against MFC42

Visual Studio 2015 link against MFC42

本文关键字:against MFC42 link 2015 Studio Visual      更新时间:2023-10-16

我最近继续了一个我曾经用Visual Studio 6使用MFC开发的项目。
我至少有4年没有碰过代码。
在VS6上编译得很好。
但是现在我安装了VS2015,转换了项目并修复了一些不能在VS2015上编译的代码。
所以一切都很顺利。但是当我试图在干净的Windows 10系统上启动exe时,它说运行时dll缺失(例如mfc140 .dll)。我知道我可以安装vc++发行版来让我的应用程序工作,但是我的应用程序的大小只有325kB。但是我可以看到mfc42 .dll在这个空白的win10系统上。现在已经有了vc++运行时,包括MFC。我只是不想在每个系统上安装一个新的vc++运行时,为什么不使用现有的呢?

谁能告诉我在使用VS2015时如何链接MFC42 ?

想知道为什么这个问题被否决了。
但答案是:这是不可能的。

如果您不想打包vc可分发版,请在安装时从Microsoft下载它们!

在使用InnoSetup依赖安装程序的InnoSetup脚本中,这看起来像

[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
Name: "de"; MessagesFile: "compiler:LanguagesGerman.isl"
[Code]
// shared code for installing the products
#include "scriptsproducts.iss"
// helper functions
#include "scriptsproductsstringversion.iss"
#include "scriptsproductswinversion.iss"
#include "scriptsproductsfileversion.iss"
// actual products       
#include "scriptsproductsmsiproduct.iss"
#include "scriptsproductsvcredist2015.iss"
// Perform some initializations.  Return False to abort setup
function InitializeSetup: Boolean;
begin
  initwinversion();
  SetForceX86(true); // force 32-bit install of next products
  vcredist2015();
  SetForceX86(false); // disable forced 32-bit install again
end;

考虑到你的应用程序从VS6升级后仍然只有32位