从VS2003更新到VS2010后构建错误

时间:2012-10-24 05:58:16

标签: c++ visual-studio-2010

我有一个在VS2003中运行良好但没有错误的项目,但出于某种原因我必须将其更新到2010。更新项目后,在构建项目时,我收到了以下错误:

1.errorLNK1179:Invalid or corrupt files :duplicate comdat“IIDIDispatchEx”
2.IIDIDispatchEx duplicate initialization on file dispeX.h(121)

我发现LNK1179的错误可能是因为我有多个COMDAT共享同名,并使用/h来限制外部名称的长度,同时将/ Gy包装在COMDAT中。
但是代码中没有使用/H选项,我已禁用/Gy。但错误仍然发生。

正在搜索dispeX.h,我在MicrosoftSDKs\Windows\v7.0A\Include\找到了它。第121行的代码是:

DEFINEGUID(IIDIDispatchEx, 0xa6ef9860, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);

我不知道如何解决这个问题,非常欢迎任何帮助或解释或指导正确的方向。

0 个答案:

没有答案