高分问题求助:error LNK1179: 无效或损坏的文件: 重复的 COMDAT“IIDIDispatchEx”
原来的代码在2003下可正常编译,但是由于其他代码都是2010的,为统一调整必须将2003项目升级到2010,问题也就跟着来了,编译无法通过,提示如下出错信息:1、error LNK1179: 无效或损坏的文件: 重复的 COMDAT“IIDIDispatchEx”
2、IIDIDispatchEx重复初始化,文件dispeX.h(121)
通过查找发现dispeX.h是个库文件,位于MicrosoftSDKs\Windows\v7.0A\Include\下
121行代码:DEFINEGUID(IIDIDispatchEx, 0xa6ef9860, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
网上查了一下,MSDN关于LNK1179的解释是http://msdn.microsoft.com/zh-tw/library/cddbs9aw.aspx 包含了兩個或多個具有相同名稱的 COMDAT,使用了限制外部名稱 (External Name) 長度的 /H,和在 COMDAT 中封裝函式的 /Gy,可能會產生這項錯誤。
可是实际调试过程,并没有在使用/H,(属性— C++ — 命令行下查看)
并且也禁用过/Gy,编译时仍然报同样的错误
哪位大侠可以帮忙提供一下解决方案啊? --------------------编程问答-------------------- 应该是atl版本问题
补充:.NET技术 , VC.NET