这是深入解析ATLpart01下载,和广为人知的MFC不同,ATL使用了C++模板技术,并且只需要(yào)包含头文件即可使用,可用于任何Win32和COM程序中,不需要运行库支(zhī)持(chí)(也可(kě)以加(jiā)上一个非常小的运行库,但这并不是必(bì)要的),基本不会带来额外的负担。
深入解析(xī)ATLpart01,里面有具(jù)体的例子(zǐ)应用-ATL standard library development and application of skills, there are specific examples of applications.
ATL最(zuì)初是用来(lái)开发COM组件(jiàn)和(hé)ActiveX控件(jiàn)的,所(suǒ)以你(nǐ)有时候会看(kàn)到它被称为ActiveX Template Library,但(dàn)是实际上(shàng)ATL不只是组件和控件编程,它还可以简(jiǎn)化Win32编程、COM组件(jiàn)调用、ActiveX控件容纳等的实现。ATL对于Win32和COM编程相关内(nèi)容只进行(háng)了薄层封(fēng)装。与(yǔ)庞大臃肿的MFC(或其它第三方类库)相比,对于Win32和COM的直接兼容性更好,使用更为灵活和自由。
本书所讲述的版本为ATL 8.0,包含在(zài)Visual Studio 2005中,已经较为(wéi)成熟和稳定(dìng),大部(bù)分(fèn)适用于现在Visual Studio 2015的(de)ATL 14.0版本。对于Windows下的C++开(kāi)发者来说,本书是非常具有参考价值的。
OLECHAR: 对于Win32操作,这(zhè)是wchar_t类型,对于Win 16操作系(xì)统, 这是(shì)char.
BSTR: 某些COM组件使用的特殊数据类型(xíng),BSTR是一个包含长度前缀(zhuì)的(de)OLECHAR数组。
当源字符集和目(mù)标字符(fú)集不同并且(qiě)目标类型(xíng)是(shì)BSTR时, 这些宏使用了SysAllocString 和 SysAllocStringLen函数来分配目(mù)标字符串,必须用SysFreeString来(lái)释放这个BSTR
