【问题标题】:Upgrading VC++ project from VS 2008 to VS 2010将 VC++ 项目从 VS 2008 升级到 VS 2010
【发布时间】:2013-03-01 20:01:06
【问题描述】:

我正在将一个项目从 VS 2008 升级到 VS 2010。我遇到了以下未解决的链接错误。

LINK : error LNK2001: unresolved external symbol __forceCRTManifestCUR

在对错误进行了一些网络搜索之后...以下链接确实为我指明了正确的方向。

http://social.msdn.microsoft.com/Forums/da-DK/vcgeneral/thread/af6796af-a1bf-4904-9923-15101956d882

但添加“int __forceCRTManifestCUR=0;”这个到主文件对我不起作用。

我发现我原来在 Linker->Command Line 下的 VS 2008 项目属性有额外的 /include:__forceCRTManifestCUR 选项。此选项在 VS 2008 中运行良好 构建但在 VS 2010 中出现链接错误。

去掉这个选项后,我在 VS 2010 中可以正常编译了。

我的问题是……

  1. 这个包含选项 /include:__forceCRTManifestCUR 有什么作用?和
  2. 为什么它在 VS 2010 中不起作用?

【问题讨论】:

  • 这是处理清单的一种方法,可确保从 Windows 并行缓存中找到正确的运行时 DLL。这在 VS2010 中不再存在,您可以删除 /include 选项。

标签: visual-studio-2010 visual-studio-2008


【解决方案1】:

看来你得写

extern "C" int _forceCRTManifestCUR=0 

因为它可以在 C++ 中工作,原始文章忘记提及这一点。

【讨论】:

    猜你喜欢
    • 2016-09-12
    • 2023-03-14
    • 2016-06-28
    • 1970-01-01
    • 2013-08-29
    • 2011-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多