【ACCESS精品源码栏目提醒】:网学会员--在 ACCESS精品源码编辑为广大网友搜集整理了:【精品】ATL(Active Templete Library)简述 - 其它资料绩等信息,祝愿广大网友取得需要的信息,参考学习。
ATL开放分类: 编程、计算机、组件、COM 组件 ATLActive Template Library 活动模板库,是一种微软程序库,支持利用 C语言编写 ASP 代码以及其它 ActiveX程序。
通过活动模板库,可以建立 COM 组件,然后通过 ASP 页面中的脚本对 COM 对象进行调用。
这种 COM 组件可以包含属性页、对话框等等控件。
ATL 简介 一. 什么是 ATL 自从 1993 年 Microsoft 首次公布了 COM 技术以后, 以 Windows 平台上的开发模式发生了巨大的变化, COM 为基础的一系列软件组件化技术将 Windows 编程带入了组件化时代。
广大的开发人员在为 COM 带来的软件组件化趋势欢欣鼓舞的同时,对于 COM 开发技术的难度和烦琐的细节也感到极其的不便。
COM 编程一度被视为一种高不可攀的技术,令人望而却步。
开发人员希望能够有一种方便快捷的 COM 开发工具,提高开发效率,更好地利用这项技术。
针对这种情况,Microsoft 公司在推出 COM SDK 以后,为简化 COM 编程,提高开发效率,采取了许多方案,特别是在 MFC(Microsoft Foundation Class)中加入了对 COM 和 OLE 的支持。
但是随着 Internet 的发展,分布式的组件技术要求 COM 组件能够在网络上传输,而又尽量节约宝贵的网络带宽资源。
采用 MFC 开发的 COM 组件由于种种限制不能很好地满足这种需求,因此 Microsoft 在 1995 年又推出了一种全新的 COM 开发工具 ATL。
ATL 是 ActiveX Template Library 的缩写,它是一套 C模板库。
使用 ATL 能够快速地开发出高效、简洁的代码(Effective and Slim code),同时对 COM 组件的开发提供最大限度的代码自动生成以及可视化支持。
为了方便使用,从Microsoft Visual C 5.0 版本开始, 1998 年 9 月推出的 Visual Studio 6.0 Microsoft 把 ATL 集成到 Visual C开发环境中。
集成了 ATL 3.0 版本。
目前,ATL 已经成为 Microsoft 标准开发工具中的一个重要成员,日益受到 C开发人员的重视。
ATL 究竟给开发人员带来了什么样的益处呢?这还要先从 ATL 产生以前的 COM 开发方式说起。
在 ATL 产生以前,开发 COM 组件的方法主要有两种:一是使用 COM SDK 直接开发 COM 组件,另一种方式是通过MFC 提供的 COM 支持来实现。
直接使用 COM SDK 开发 COM 组件是最基本也是最灵活的方式。
通过使用 Microsoft 提供的开发包,我们可以直接编写 COM 程序。
但是,这种开发方式的难度和工作量都很大,一方面,要求开发者对于 COM 的技术原理具有比较深入的了解(虽然对技术本身的深刻理解对使用任何一种工具都是非常有益的,但对于 COM 这样一整套复杂的技术而言,在短时间内完全掌握是很难的),另一方面,直接使用 COM SDK 要求开发人员自己去实现 COM 应用的每一个细节,完成大量的重复性工作。
这样做的结果是,不仅降低了工作效率,同时也使开发人员不得不把许多精力投入到与应用需求本身无关的技术细节中。
虽然这种开发方式对于某些特殊的应用很有必要,但这种编程方式并不符合组件化程序设计方法所倡导的可重用性,因此,直接采用 COM SDK 不是一种理想的开发方式。
使用 MFC 提供的 COM 支持开发 COM 应用可以说在使用 COM SDK 基础上提高了自动化程度,缩短了开发时间。
MFC 采用面向对象的方式将 COM 的基本功能封装在若干 MFC 的 C类中,开发者通过继承这些类得到 COM 支持功能。
为了使派生类方便地获得 COM 对象的各种特性,MFC 中有许多预定义宏,这些宏的功能主要是实现 COM 接口的定义和对象的注册等通常在 COM 对象中要用到的功能。
开发者可以使用这些宏来定制 COM 对象的特性。
另外,在 MFC 中还提供对 Automation 和 ActiveX Control 的支持,对于这两个方面,Visual C也提供了相应的AppWizard 和 ClassWizard 支持,这种可视化的工具更加方便了 COM 应用的开发。
MFC 对 COM 和 OLE 的支持确实比手工编写 COM 程序有了很大的进步。
但是 MFC 对 COM 的支持是不够完善和彻底的