error LNK2022: metadata operation failed (801311D6) : Differing number of methods in duplicated type...

本文主要是记录一个C++编译错误的解决方案,具体错误请看本文标题。

这个错误主要是由Managed C++的增量编译导致的,这是VS 2008的一个bug,在VS 2010已经修复,我使用的正式2010所以直接简单做一下Clean然后再Rebuild就可以了。如果你用的是VS 2008,请参考以下解决方案:

  1. 禁用增量编译。 In the project properties, under Configuration Properties > General, set "Enable Managed Incremental Build" to No.
  2. 给待编译的项目制定一个具体的版本。比如将 
    [assembly:AssemblyVersionAttribute("1.0.*")];

    替换为

    [assembly:AssemblyVersionAttribute("1.0.0.1")];

     

参考:

  • StackOverflow关于这个问题的解答:http://stackoverflow.com/questions/810827/lnk2022-metadata-operation-failed-driving-me-insane
  • 微软的bug页面:https://connect.microsoft.com/VisualStudio/feedback/details/442615/managed-incremental-build-doesnt-work-if-change-to-dependent-project-was-insignificant

转载于:https://www.cnblogs.com/rader/p/3521919.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值