Duilib Demo 编译报错:(error C2371: “IDispatchEx”: 重定义;不同的基类型)
来源:互联网 发布:b2b 快速 建站 编辑:程序博客网 时间:2024/05/23 18:20
用VS2010编译Duilib Demo时报错:
-------------------------------------------------------------------------------------
1>f:\duilib\duilib\Control/UIFlash.h(10): warning C4192: 导入类型库“IServiceProvider”时自动排除“..\Utils/Flash11.tlb”
1> UIWebBrowser.cpp
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217): error C2371: “IDispatchEx”: 重定义;不同的基类型
1> c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(53) : 参见“IDispatchEx”的声明
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(435): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(869): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(887): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\mshtml.h(4715): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\mshtml.h(4738): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
-------------------------------------------------------------------------------------
解决办法:
\DuiLib\Control\UIFlash.h 中将下行
-------------------------------------------------------------------------------------
1>f:\duilib\duilib\Control/UIFlash.h(10): warning C4192: 导入类型库“IServiceProvider”时自动排除“..\Utils/Flash11.tlb”
1> UIWebBrowser.cpp
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217): error C2371: “IDispatchEx”: 重定义;不同的基类型
1> c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(53) : 参见“IDispatchEx”的声明
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(435): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(869): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(887): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\mshtml.h(4715): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\mshtml.h(4738): error C2872: “IDispatchEx”: 不明确的符号
1> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dispex.h(217) : IDispatchEx”
1> 或 “f:\duilib\duilib\build\debug\flash11.tlh(297) : ShockwaveFlashObjects::IDispatchEx”
-------------------------------------------------------------------------------------
解决办法:
\DuiLib\Control\UIFlash.h 中将下行
#import "..\Utils/Flash11.tlb" raw_interfaces_only, named_guids
改为:
#if _MSC_VER<=1500 //vs2008 #import "..\Utils/Flash11.tlb" raw_interfaces_only, named_guids#elif _MSC_VER<=1600 //vs2010 #import "PROGID:ShockwaveFlash.ShockwaveFlash" \ raw_interfaces_only, /* Don't add raw_ to method names */ \ named_guids, /* Named guids and declspecs */ \ rename("IDispatchEx","IMyDispatchEx")/* fix conflicting with IDispatchEx ant dispex.h */ #else //vs2013 #import "PROGID:ShockwaveFlash.ShockwaveFlash" \ raw_interfaces_only, /* Don't add raw_ to method names */ \ named_guids, /* Named guids and declspecs */ \ rename("IDispatchEx", "IMyDispatchEx")/* fix conflicting with IDispatchEx ant dispex.h */\ rename("ICanHandleException", "IMyICanHandleException")#endif
0 0
- Duilib Demo 编译报错:(error C2371: “IDispatchEx”: 重定义;不同的基类型)
- Duilib Demo 编译报错:(error C2371: “IDispatchEx”: 重定义;不同的基类型)
- Visual Studio 2010 编译Duilib源码报错: error C2371: “IDispatchEx”: 重定义;不同的基类型 解决方法
- error C2371: “IDispatchEx”: 重定义;不同的基类型的解决方案
- error C2371: “pCopyState”: 重定义;不同的基类型
- error C2371 int_fast16_t 重定义不同的基类型
- error C2371: “INT32”: 重定义;不同的基类型
- 【Complier】error C2371: 重定义;不同的基类型
- basetsd.h(72): error C2371: “INT32”: 重定义;不同的基类型
- 重定义;不同的基类型
- VS2008 “重定义;不同的基类型”
- 重定义;不同的基类型
- “DWORD”: 重定义;不同的基类型
- jmorecfg.h文件中出现error C2371: “INT32”: 重定义
- jmorecfg.h文件中出现error C2371: “INT32”: 重定义
- “BOOLEAN”: 重定义;不同的基类型 ”问题 rpcndr.h(147) : error C2632: “char”后面的“int”非法
- struct 结构体“重定义;不同的基类型”
- C语言重定义不同的基类型
- 海盗分赃算法题
- 51之串口环回测试
- 做一个合格的职场人
- sqlalchemy学习日志
- Toj 3345/hdu 1281 Chinese Chess 二分图匹配
- Duilib Demo 编译报错:(error C2371: “IDispatchEx”: 重定义;不同的基类型)
- OCP 1Z0 053 168
- linux(ubuntu)下基于java的在线音乐仿qq播放器,
- 由前序和中序序列构建二叉树
- 7.12-2014新生归来赛
- mysql错误及解决(1)
- 《Programming in Lua 3》读书笔记(十二)
- C#调用C++ DLL简析(一)——生成非托管dll
- metasploit + openvas