版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、MICROSOFT2008MFC程序員的WTL指南開發(fā)文檔wzj[GG資源網(wǎng):]GG資源網(wǎng):序言序言我一直在尋找這樣一個類庫:他對Windows的窗口提供面向?qū)ο蟮姆庋b,有靈活的消息響應(yīng)機(jī)制和比較完備的界面框架解決方案,對標(biāo)準(zhǔn)控件提供簡練實用的封裝,支持操作系統(tǒng)的新特性,支持功能擴(kuò)充和二次開發(fā),有代碼自動生成向?qū)C(jī)制,生成的程序使用較少的系統(tǒng)資源,最后是有完全的代碼支持和文檔支持。你會說那就用MFC吧!是的,我一直使用MFC,但我對MF
2、C已經(jīng)越來越厭倦了。陳舊的類庫使得它無法支持操作系統(tǒng)的新特性(MFC的類庫從4.21版之后就沒有更新了,而那時是1998年,人們使用Windows95和windowsNT4),臃腫的消息映射機(jī)制和為了兼容性而保留下來的代碼使得程序效率低下,面面俱到的框架結(jié)構(gòu)使得生成的應(yīng)用程序龐大并占用過多的系統(tǒng)資源。當(dāng)一個功能簡單的程序使用動態(tài)鏈接也超過200K,占用3%4%的系統(tǒng)資源時,我決定放棄MFC,尋找一個新的功能類似的類庫。我研究過很多類似的
3、代碼,不是過于簡單,無法用于應(yīng)用程序的開發(fā)就是缺乏代碼和文檔的支持。在CodeProject上有一個名為Class的類庫,我也研究過它的代碼,具備了基本的界面框架,對控件也有了簡單的封裝,但是不實用,龐大的虛函數(shù)機(jī)制使得對象非常臃腫,無法減少對資源的占用。我甚至仿照MFC做了一個簡單的類庫miniGUI,形成了基本的框架解決方案,但是最后放棄了,原因很簡單:無法用于應(yīng)用程序的開發(fā)。一個應(yīng)用程序界面框架錯綜復(fù)雜,要考慮的事情太多,開發(fā)者不
4、可能在應(yīng)用程序和界面框架兩線作戰(zhàn)。就在我即將絕望的時候,我遇到了WTL。由于工作的需要經(jīng)常開發(fā)一些COM組件,在要求不能使用MFC的場合就是用ATL。ATL提供了對窗口的面向?qū)ο蟮胤庋b和簡單的消息映射機(jī)制,但是ATL過于簡單,用它開發(fā)應(yīng)用程序幾乎不可能。要想讓ATL具備界面框架解決方案的功能還需要做很多事情,幸運的是WTL就做了這些事情。WTL是個很奇特的東西,它由微軟公司一群熱情的程序員維護(hù),它從未出現(xiàn)在微軟的官方產(chǎn)品名單上,但可以從
5、微軟的官方網(wǎng)站下載最新的WTL。它沒有正式的文檔支持,用WTL做關(guān)鍵字在MSDN中檢索只能得到0個結(jié)果,但是全世界的開發(fā)網(wǎng)站上都有針對WTL的討論組和郵件列表,任何問題都會得到熱情的解答。我認(rèn)真地對比了MFC和WTL,發(fā)現(xiàn)二者有很多相通之處,MFC的功能幾乎都能在WTL中實現(xiàn),只是方法不同而已。我?guī)缀醪毁M吹灰之力就將以前寫的一個MFC程序用WTL改寫了,使用靜態(tài)鏈接的WTL程序比使用動態(tài)鏈接的MFC程序還要小,資源占用只有MFC程序的一
6、半。但是一時的熱情不能解決文檔缺乏的困擾,雖然網(wǎng)上有很多使用WTL的例子和說明文章,幾乎把MFC能實現(xiàn)的各種稀奇古怪的效果都實現(xiàn)了。就在這個時候我看到了邁克爾.敦(MichaelDunn)的“WTLfMFCProgrammers”系列文章,我的感覺和1995年我第一次見到MSDN時一樣,幾乎是迫不及待地將其讀完,同時也萌發(fā)了將其翻譯成漢語的沖動。于是給Michael寫了封郵件,希望能夠得到授權(quán)將他的文章翻譯成漢語(事實上在這之前我已經(jīng)翻
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論