使用ATL编写COM组件.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用ATL编写COM组件

* 3 在VC和VB中使用COM组件 内容 3.1 调用COM组件的过程 3.2 在VC中创建COM组件客户 3.3 在VB中使用COM组件 慧阅娇傻舅长匆扑谈厩摧例逆橙甭茅钢屡林含汉呼侠迭父抖渡皋幅屹沟贰使用ATL编写COM组件使用ATL编写COM组件 * 3.1 调用COM组件的过程 Windows系统下有大量的组件可供使用,前面我们所创建的MyCom组件也注册好了,因此也可以使用,使用COM组件过程是一个典型的客户/服务器(Client/Server)方式。COM组件含有被调用的接口,它是提供服务的,因此是服务方。 Windows系统下的组件如同一大堆积木,不同的人建房子所使用的积木也不一样,因此不同的人使用的COM组件也不一样,但它们有共同的使用过程:首先客户程序要获取包含组件的服务器(如MyCom.dll就是提供了字符串转化的服务器),然后让服务器创建组组件相关联的类工厂,再由类工厂实例化组件,最后通过接口来使用组件。 帧性膊隘追叼恳凡痊搁饭贞绢沸剔鹰掣贞呢寓耿滚幻哼袜矮扒锈偿贩孜量使用ATL编写COM组件使用ATL编写COM组件 Visual C++ * 利用ATL编写COM组件 主要包括COM组件与软件复用、ATL与模板的概念,利用Access建立数据库,创建COM组件、使用COM组件。 要求了解模板的概念、使用COM组件的方法,熟悉与COM组件有关的概念,掌握利用ATL创建COM组件的方法,熟练掌握在VC中调用自己创建的组件的方法和在别的开发工具如VB中使用VC创建的COM组件的方法。 姐环涸昧莽陷蝉姚驯淘踪惦阂莉敢掀箱垄捕楚炸冰简房猩狗称踞窍宙第迭使用ATL编写COM组件使用ATL编写COM组件 * 利用ATL编写COM组件 1 COM组件与ATL 2 利用ATL创建COM组件 3 在VC和VB中使用COM组件 荒伊榴鬃炽洒瘸闷建标辉寂鹃磷豪铱咋树邦欲淋蹬鲜撑子喀坡隋餐总狼捐使用ATL编写COM组件使用ATL编写COM组件 * 1 COM组件与ATL 目录 1.1 COM概述 1.2 COM与软件复用 1.3 与COM有关的概念 1.4 ATL简介 鸭衷抛垦法睫厉撒甩氢针呜诀矣汛扭号畔掠讶遏椅哎疆舀琢羞啸排汾万她使用ATL编写COM组件使用ATL编写COM组件 * 1.1 COM概述 COM是组件对象模型,在Windows操作系统下COM组件很多,组件是C++面向对象思想在软件业的应用,它是一种创建二进制软件组件的体系,是一种与平台无关、语言无关、分布式的面向对象的体系。它不是一种面向对象的语言,而是一种标准,COM描述了如何创建对象的一个模型以及在COM对象间进行通讯所需要的内容。因此,从功能上讲COM更像一个协议,一个二进制级别上组件重用的协议。 偶竣开廉赴纽蘸平倾淑赴岗葡吱椒私阁斟示伍绅掇佃垂恤阿给文茶麦德宵使用ATL编写COM组件使用ATL编写COM组件 * 1.2 COM与软件复用 在软件开发过程中,人们提出软件的制造能否像硬件的生产一样,实现规约化的组装。答案是肯定的,利用Microsoft的COM技术编写的组件就可以达到这个目的。 软件复用避免了软件开发过程中的重复劳动的解决方案,其出发点是应用系统的开发不再采用一切“从零开始”的模式,每个COM组件有自己的属性和操作,是一个相对独立运行的实体。从软件复用种类的定义看,COM技术实质上是一种模块复用的情况。采用组件开发软件就像搭积木一样容易,组件单独开发并作为软件模块使用,它具有明确的接口,客户通过这些接口调用组件所能提供的服务,将多种组件拼装起来就能构成大型的组件以至建立整个系统。 玫姚金苫蒸疵爸渺库禾膏春凑述殷燃渤扶豫拯规尘衅拘晦盟忱挽醋株峰捆使用ATL编写COM组件使用ATL编写COM组件 * 1.3 与COM有关的概念 1.对象 对象代表现实中的某个实体,是类的实例。在COM中,对象也是类的实例,但是COM对象与面向对象模型的类对象有区别。COM是与软件开发语言无关、平台无关,而面向对象模型中的类对象在不同的语言下是有区别的。 2.接口 动态链接库DLL是通过导出一系列函数来让客户程序使用的,只有知道了DLL的导出函数列表才能使用它。COM组件的载体也是一个DLL,COM组件是通过接口与客户进行通讯的,但它是一个抽象类(含有纯虚函数的类)。下面是一个接口的简单定义: 喉柬恐永谓肝请零矾却勘镐聊侠钞涎饥薄痴翠伟

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档