Visual Studio 2015链接到MFC42

时间:2015-09-09 08:06:50

标签: c++ mfc visual-studio-2015

我最近继续使用MFC使用Visual Studio 6开发的项目 我没有触及代码至少4年 这一切都在VS6上很好地编译 但是现在我安装了VS2015,转换了项目并修复了一些不再在VS2015上编译的代码。
所以一切顺利。但当我尝试在干净的Windows 10系统上启动exe时,它表示运行时dll丢失(例如MFC140u.dll) 我知道我可以安装VC ++ distributable以使我的应用程序正常工作,但我的应用程序的大小只有325kB。 但我可以看到MFC42u.dll在这个空白的Win 10系统上。所以已经有一个包含MFC的VC ++运行时。 我只是不想在每个系统上安装新的VC ++运行时,为什么不使用现有系统?

有人可以告诉我在使用VS2015时如何连接MFC42吗? 提前谢谢。

2 个答案:

答案 0 :(得分:1)

不知道为什么这个Q被投票了 但答案是:这是不可能的。

答案 1 :(得分:0)

如果您不想打包vc可再发行组件,请在安装过程中从Microsoft下载!

InnoSetupInnoSetup Dependency Installer脚本中,这看起来像是

[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
Name: "de"; MessagesFile: "compiler:Languages\German.isl"

[Code]
// shared code for installing the products
#include "scripts\products.iss"
// helper functions
#include "scripts\products\stringversion.iss"
#include "scripts\products\winversion.iss"
#include "scripts\products\fileversion.iss"
// actual products       
#include "scripts\products\msiproduct.iss"
#include "scripts\products\vcredist2015.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位。