wtl唯有的(网上这样说的)一本参考书籍。。
WTL for MFC Programmers中文版
*** wtl是m$为数不多的*开源*程序哦。。。
具体wtl的介绍我就摘录这本书里面的一段。。
我一直在寻找这样一个类库:他对Windows的窗口提供面向对象的封装,有灵活的消息响应机制和比较完备的界面框架解决方案,对标准控件提供简练实用的封装,支持操作系统的新特性,支持功能扩充和二次开发,有代码自动生成向导机制,生成的程序使用较少的系统资源,最后是有完全的代码支持和文档支持。
你会说那就用MFC吧!
是的,我一直使用MFC,但我对MFC已经越来越厌倦了。陈旧的类库使得它无法支持操作系统的新特性(MFC的类库从4.21版之后就没有更新了,而那时是1998年,人们使用Windows 95和windows NT4),臃肿的消息映射机制和为了兼容性而保留下来的代码使得程序效率低下,面面俱到的框架结构使得生成的应用程序庞大并占用过多的系统资源。当一个功能简单的程序使用动态链接也超过200K,占用3%-4%的系统资源时,我决定放弃MFC,寻找一个新的功能类似的类库。我研究过很多类似的代码,不是过于简单,无法用于应用程序的开发就是缺乏代码和文档的支持。在CodeProject上有一个名为Class的类库,我也研究过它的代码,具备了基本的界面框架,对控件也有了简单的封装,但是不实用,庞大的虚函数机制使得对象非常臃肿,无法减少对资源的占用。我甚至仿照MFC做了一个简单的类库miniGUI,形成了基本的框架解决方案,但是最后放弃了,原因很简单:无法用于应用程序的开发。一个应用程序界面框架错综复杂,要考虑的事情太多,开发者不可能在应用程序和界面框架两线作战。就在我即将绝望的时候,我遇到了WTL。
由于工作的需要经常开发一些COM组件,在要求不能使用MFC的场合就是用ATL。ATL提供了对窗口的面向对象地封装和简单的消息映射机制,但是ATL过于简单,用它开发应用程序几乎不可能。要想让ATL具备界面框架解决方案的功能还需要做很多事情,幸运的是WTL就做了这些事情。WTL是个很奇特的东西,它由微软公司一群热情的程序员维护,它从未出现在微软的官方产品名单上,但可以从微软的官方网站下载最新的WTL。它没有正式的文档支持,用WTL做关键字在MSDN中检索只能得到0个结果,但是全世界的开发网站上都有针对WTL的讨论组和邮件列表,任何问题都会得到热情的解答。我认真地对比了MFC和WTL,发现二者有很多相通之处,MFC的功能几乎都能在WTL中实现,只是方法不同而已。我几乎不费吹灰之力就将以前写的一个MFC程序用WTL改写了,使用静态链接的WTL程序比使用动态链接的MFC程序还要小,资源占用只有MFC程序的一半。
......
Murphy's Law :
If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it.