ATL实战:步骤详解ActiveX控件的创建与应用

需积分: 0 2 下载量 87 浏览量 更新于2024-07-28 收藏 343KB PDF 举报
本文档详细介绍了如何使用Microsoft ATL (Active Template Library) 创建ActiveX控件的过程。ATL是Microsoft提供的一个用于开发COM组件的工具包,特别适合于创建高性能、可重用的对象。以下是创建步骤和涉及到的关键文件及其功能: 1. **创建工程**: - 使用Visual Studio 6(VC6)集成开发环境,通过新建PROJECT -> ATLCOMAppWizard。 - 输入项目名"Polygon",接着会生成一系列基础文件,包括: - `Polygon.cpp`: 主要负责实现DllMain、DllCanUnloadNow、DllGetClassObject、DllRegisterServer和DllUnregisterServer等COM组件管理函数,以及对象映射(ObjectMap),记录控件对象的信息。 - `Polygon.def`: DLL模块定义文件,定义了控件的接口和属性。 - `Polygon.dsw` 和 `Polygon.dsp`: 分别是项目工作区文档和项目设置文档,用于管理项目的结构和配置。 - `Polygon.idl`: 接口定义语言文件,描述控件对外提供的接口。 - `Polygon.rc`: 资源文件,包含版本信息和工程名称字符串。 - `Resource.h`: 资源头文件。 - `Polygonps.mk` 和 `Polygonps.def`: 与代理存根DLL相关的文件,用于生成和管理控件的编译过程。 2. **添加ActiveX控件**: - 打开INSERT菜单,选择NewATLObject,进行控件设计。用户可以选择"Controls"类别,选择"FullControl"模板,然后继续向导。这将创建一个新的类,用于实现所需的功能,如圆内正多边形,边数变化以及颜色控制。 3. **控件功能实现**: - 控件的主体部分包括处理用户点击事件,根据点击位置决定是增加还是减少多边形的边数,以及改变多边形的颜色。这涉及到了图形绘制、事件处理和COM接口的调用。 4. **控件的应用示例**: - 文档提供了两个示例来展示如何使用这个新创建的ActiveX控件:一是将其嵌入到网页中,利用COM技术与HTML交互;二是将其应用到一个基于对话框的程序中,演示控件在不同上下文中的使用。 总结来说,本文档详细指导了使用ATL工具创建ActiveX控件的全过程,从工程初始化、控件设计到功能实现,以及实际应用场景的展示,帮助读者深入理解ATL在开发COM组件中的作用。通过这个例子,开发者可以学习如何结合C++和COM技术,创建可复用的、高效的控件以满足不同软件项目的需求。