ATL: Active Template Library(活动模板库)
一种开发框架,通过它可以快速建立基于COM的组件
基本特征:
1.对低级别COM功能的内置式支持:IUnknown, 类工厂, self-registration
2.支持IDL(interface definition language)
3.对自定义Vtable接口的调度支持(marshaling)
4.对自动化(IDispatch)和双向接口的支持(dual interfaces)
5.用于开发ActiveX和OLE控件
ATL vs MFC/WTL(windows template framework)
如果开发控件ATL优先
如果开发有大量GUI的程序MFC/WTL优先
组件需要一个类工厂
为什么ATL更轻便?
因为从本质上说ATL是包含一些模板类的头文件,你只需要include这些头文件,类的实现就直接包含到你的工程里了,而不需要像MFC那样链接大量的DLL
当你选择DLL作为宿主,就可以选择Allow merging of proxy/stub code (代理/占位)这样可以少分配一个DLL文件
在对象向导里:
C++ names 是 C++实现类
CoClass 是 com 类的名称
客户程序使用CoClass 来调用组件
原文地址:http://www.cnblogs.com/aoun/p/3789376.html