雖然說 C++ Builder 3.0 是 Borland C++
5.02 的下一個版本,一樣支援 MFC
,但若要在 C++ Builder 3.0 下使用
MFC 並不簡單。不是直接寫個 MFC native
Code 並在 Project Option 中再勾選個 MFC
Compatibility
這麼簡單,若你只這樣做,保證你在編譯時一定會得到一堆的
Warnning 與 Error。要讓你與 BCB
都能夠輕鬆的編譯 MFC
,我們所必需的就是自己動點手腳,並將這個動過手腳的
Project 檔給放到 Object Repository;之後,你只需要按下選單上的
New 就可以開始你的 MFC in BCB之路了。
Step 1、
New 一個新的 Project
Step 2、
在 Project Option裡的
Directories\\Conditionals 這一頁的Conditionals\\Conditional
defines中給加入
_X86_
_WINDOWS
_MSC_VER=1100
_AFX_PORTABLE
_AFX_NOFORCE_LIBS
_MT
_CRT_PORTABLE
_AFX_NO_DEBUG_CRT
|
這幾個編譯用的參數。
並記得在 include path 加入 $(BCB)\\include\\MFC
這一項。
Step 3、
接著在 Advance Compilers 這一頁裡將 MFC
Compatibility 給勾選起來,
Step 4、
緊接著,將檔案給存起來,裡用文字編輯器來修改這個
Project 的 bpr 檔。
找到 CFLAG1 = ...... 這一行
將這一行給為
CFLAG1 = -Od -Hc -w -k -r-
-y -v -vi- -c -w-par -w-inl -w-hid -w-aus -g0 -WM
-W
再找到 CFLAG3 = ...... 這一行
將這一行給為
CFLAG3 = -Tkh30000 -VF
最後找到 ALLLIB = .... 這一行
將這一行給為
ALLLIB = $(LIBFILES)
$(LIBRARIES) nafxcw.lib import32.lib cw32mt.lib
接著就是存檔囉!
Step
5、
這樣一來,就可以直接在BCB3下享用MFC囉!
不可不知道
在此範例中,所編譯出來的檔案將會是
static link 的版本,並非 dynamic
link,要怎麼樣在 BCB 3 下做
dynamic link MFC library
呢?在此先賣個關子,看看 BCB
裡所附上的範例吧!
此外,在 BCB 有很多方式來鏈結
VCL 與 MFC,大致可分為兩類 :1、以
TApplication
為主體,而程式中混合使用 VCL與
MFC 所提供的其他類,如CDC、CPoint、CFile
等等.....。
2、以 MFC 的 CApp
為主體,在選單中呼叫 VCL
所組合而成的 Form。
而這兩類要怎麼樣在 BCB
裡完成呢?聰明的讀者,動動您的腦筋想想看吧! |