首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

ATL是专门用来做com的吗?该如何处理

2012-01-29 
ATL是专门用来做com的吗?ATL是什么,是专门用来做com的吗?是不是com只能用ATL做啊?概念还没搞清楚,不好意思

ATL是专门用来做com的吗?
ATL是什么,是专门用来做com的吗?
是不是com只能用ATL做啊?概念还没搞清楚,不好意思

[解决办法]
ATL是Active Template library(活动模板库),一整套脱理MFC,架在API基础上的库函数
COM是Common Object Model(公用对象模型)是一种技术规范,可以用多种语言开发COM组件.
[解决办法]
ATL是ActiveX Template Library 的缩写,它是一套C++模板库。使用ATL能够快速地开发出高效、简洁的代码(Effective and Slim code),同时对COM组件的开发提供最大限度的代码自动生成以及可视化支持。从Microsoft Visual C++ 5.0版本开始,Microsoft把ATL集成到Visual C++开发环境中。目前,ATL已经成为Microsoft标准开发工具中的一个重要成员,日益受到C++开发人员的重视。

  在ATL产生以前,开发COM组件的方法主要有两种:一是使用COM SDK直接开发COM组件,另一种方式是通过MFC提供的COM支持来实现。

  直接使用COM SDK开发COM组件是最基本也是最灵活的方式。但是,这种开发方式的难度和工作量都很大,一方面,要求开发者对于COM的技术原理具有比较深入的了解,另一方面,直接使用COM SDK要求开发人员自己去实现COM应用的每一个细节,完成大量的重复性工作。

  使用MFC提供的COM支持开发COM应用可以说在使用COM SDK基础上提高了自动化程度,缩短了开发时间。MFC采用面向对象的方式将COM的基本功能封装在若干MFC的C++类中,开发者通过继承这些类得到COM支持功能。但使用MFC开发的COM组件,尤其是ActiveX控件的开发,会产生相当大的代码冗余,而且必须要依赖于MFC的运行时刻库才能正确地运行。

  ATL技术是目前开发COM组件的一种比较理想的技术。ATL中所使用的基本技术包括COM技术、C++模板类技术(Template)以及C++多继承技术(Multi-Inheritance) 。

该文章转载自网络大本营:http://www.xrss.cn/Info/9600.Html
[解决办法]
COM+提供了更多服务,比如消息队列等, ATL开发的COM可以部署成COM+组件
[解决办法]
atl基本上(也可以做别的,比如最新的atlserver)只能用来做COM,com可以用很多东西来做,比如vb,delphi等等。
com+是一种特殊的com应用,其实就是把com部署到不同的机器上,利用windows导出来的组件就可以实现通讯

热点排行