duilib編譯錯誤解決方法整理 (含VS2013)

此文轉載,原文:http://blog.csdn.net/x356982611/article/details/30217473


@1:找不到Riched20.lib

用everything等軟件搜索下磁盤,找到所在的目錄添加到vs的庫目錄即可,我得是C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib;其他的vs版本可能不一樣,自行搜索


@2: “IDispatchEx”: 重定義;不同的基類型 點擊打開鏈接

UIFlash.h行:

  1. #import "..\Utils/Flash11.tlb" raw_interfaces_only, named_guids   
改爲:
  1. #import "..\Utils/Flash11.tlb" raw_interfaces_only, named_guids, rename("IDispatchEx","IMyDispatchEx")  
爲了兼容性更好,防止系統flash的插件更新後又有問題,乾脆直接導入你自己系統的OCX,於是將這一行最好改爲:


  1. #import "PROGID:ShockwaveFlash.ShockwaveFlash"  \    
  2.     raw_interfaces_only,       /* Don't add raw_ to method names */ \    
  3.     named_guids,           /* Named guids and declspecs */    \    
  4.     rename("IDispatchEx","IMyDispatchEx"/* fix conflicting with IDispatchEx ant dispex.h */   

 

vs2013則需要:

  1. #import "PROGID:ShockwaveFlash.ShockwaveFlash"  \    
  2.     raw_interfaces_only,       /* Don't add raw_ to method names */ \    
  3.     named_guids,           /* Named guids and declspecs */    \    
  4.     rename("IDispatchEx""IMyDispatchEx"/* fix conflicting with IDispatchEx ant dispex.h */  \    
  5.     rename("ICanHandleException""IMyICanHandleException")  

@3:'ICanHandleException' : redefinition; different basic types 

在UIWebBrowser.h中:

添加 #include <MsHTML.h>
修改#include "Utils/WebBrowserEventHandler.h"爲#include "../Utils/WebBrowserEventHandler.h"

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章