c++ - 如何从 Visual Studio 2010 中的 Visual C++ 项目链接到不同版本的 MFC?

标签 c++ visual-studio-2010 mfc linker

我在 VS2010 中有一个 VC++ 项目,它链接到一些用 VS2008 构建的 dll。工作正常,直到我尝试将 MFC 对象传递给 VS2008 dll。 VS2010 VC++ 项目的工件(一个 .dll)链接到 VS2010 附带的最新版本的 MFC,而 VS2008 .dll 链接到 VS2008 附带的以前版本的 MFC。

VS2010 VC++ 项目有一个“平台工具集”属性,允许 v90 (VS2008) 或 v100 (VS2010),这似乎应该可以解决问题。但是,VS2010 VC++ 项目是使用/clr(公共(public)语言运行时支持)构建的,这似乎需要以 .NET Framework 的 v4.0 为目标 - v90 (VS2008) 工具集中不支持它。

最佳答案

IIRC,.NET 1 到 3.5 也应该支持公共(public)语言运行时。您可以针对特定的 .NET 版本,请参阅 here .

我认为平台工具集意味着要么

  • VS 9.0 或 10.0 编译器和工具
  • CRT DLL 版本(以及随附的 Visual C++ 2005/2008/2010 运行时可再发行版本)。

关于c++ - 如何从 Visual Studio 2010 中的 Visual C++ 项目链接到不同版本的 MFC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3110560/

相关文章:

c++ - 覆盖结构上的二进制 << 运算符

c# - 与多个项目共享单元测试

c++ - 使用 CString 参数调用 UpdateAllViews

c++ - 调试时 MFC 断言失败

c++ - CString解析回车

c++ - 为什么这个 SFINAE 没有按预期工作?

c# - 哈希表碰撞,如何获取正确的值?

c++、fstream 和 seekp 和 seekg,奇怪的程序

c++ - "new"没有在类中调用指定的构造函数?

c++ - 根据运行时参数创建专用类的实例