2010年8月17日 星期二

專案轉換常發生的 qedit.h 編譯問題

有時新的 IDE 工具上市時,為了配合某些流程,必須將舊的開發環境轉至新的開發環境,又或網路上下載了 VS2003 的範例,苦於自己只有 VS2005 而必須轉換,這種狀況就常常遇到一些前置處理器與編譯的惱人錯誤…

qedit.h 是我自己蠻常遇到的一個問題,錯誤清單常常滿滿上百行都是 qedit.h 的問題,解法有二
找到 qedit.h 並開啟,註解下面幾行


//#include "dxtrans.h" -- Line 498
// IDxtCompositor //: public IDXEffect -- Line 837
// IDxtAlphaSetter //: public IDXEffect -- Line 1151
// IDxtJpeg //: public IDXEffect -- Line 1345
// IDxtKey //: public IDXEffect -- Line 1735


若一樣有潔癖不想動到 SDK 的 header 檔案內容,
另一解法就是在 #include <qedit.h>
這行之前加入下面這幾行 Marco


#define __IDxtCompositor_INTERFACE_DEFINED__
#define __IDxtAlphaSetter_INTERFACE_DEFINED__
#define __IDxtJpeg_INTERFACE_DEFINED__
#define __IDxtKey_INTERFACE_DEFINED__
#include <qedit.h>





#pragma include_alias( "dxtrans.h", "qedit.h" )
#define __IDxtCompositor_INTERFACE_DEFINED__
#define __IDxtAlphaSetter_INTERFACE_DEFINED__
#define __IDxtJpeg_INTERFACE_DEFINED__
#define __IDxtKey_INTERFACE_DEFINED__
#include <qedit.h>

沒有留言:

張貼留言