第四课 基于COM技术的程序设计方法
第四课 基于COM技术的程序设计方法
COM技术简介 COM( Component object Model,组件对 象模型),是一种允许对象之间跨进程、跨 计算机进行交互( Interact)的技术,并且使 得这种交互容易得好象在本地计算机同 进程中进行一样
COM技术简介 ◼ COM (Component Object Model,组件对 象模型) ,是一种允许对象之间跨进程、跨 计算机进行交互(Interact)的技术,并且使 得这种交互容易得好象在本地计算机同一 进程中进行一样
COM技术简介 COM不是一种面向对象的语言,而是 种二进制标准,它定义了组件对象之间 基于这些技术标准进行交互的方法
COM技术简介 ◼ COM不是一种面向对象的语言,而是一 种二进制标准,它定义了组件对象之间 基于这些技术标准进行交互的方法
COM技术简介 ■COM所建立的是一个软件模块与另一个 软件模块之间的链接,当这种链接建立 之后,模块之间就可以通过称之为“对 象接口”( Interface on object)的机制来 进行通信
COM技术简介 ◼ COM所建立的是一个软件模块与另一个 软件模块之间的链接,当这种链接建立 之后,模块之间就可以通过称之为“对 象接口”(Interface on Object)的机制来 进行通信
COM技术简介 为什么需要COM技术 ■在程序设计方法上,编写代码的方式由最早的面向 过程,到现在的面向对象;相应的,代码重用的方 式也由从最早的源代码级重用,到库(LIB)和动 态铕接库(DLL)等二进制(机器码)等级的重用。 但是,这时的代码重用方式却不能与编程技术相协 调。面相对象的编程技术要求能够重用一个对象, 而不仅仅是一个函数。这个要求在源代码级可以很 容易的实现,但那时的二进制代码级重用无法很好 的做到这点
COM技术简介 ◼ 为什么需要COM技术 ◼ 在程序设计方法上,编写代码的方式由最早的面向 过程, 到现在的面向对象;相应的,代码重用的方 式也由从最早的源代码级重用,到库(LIB)和动 态链接库(DLL)等二进制(机器码)等级的重用。 但是,这时的代码重用方式却不能与编程技术相协 调。面相对象的编程技术要求能够重用一个对象, 而不仅仅是一个函数。这个要求在源代码级可以很 容易的实现,但那时的二进制代码级重用无法很好 的做到这点
COM技术简介 COM的产生 ■为了协调代码重用方式和编程技术的协调, COM应运而生。COM使得不同的语言、不 同的编译器产生的对象能够互操作。 COM是一个可执行代码级的标准,由它来规 定,一个编译器应该以何种二进制格式来组 织、导出它的对象,以及如何在其他编译器 导出的对象的二进制数据中进行定位
COM技术简介 ◼ COM的产生 ◼ 为了协调代码重用方式和编程技术的协调, COM应运而生。COM使得不同的语言、不 同的编译器产生的对象能够互操作。 ◼ COM是一个可执行代码级的标准,由它来规 定,一个编译器应该以何种二进制格式来组 织、导出它的对象,以及如何在其他编译器 导出的对象的二进制数据中进行定位
COM技术简介 ■早期的COM 早期的C○M技术不具备跨计算机的远程调 用(RPC)能力,这种通过通用接口操纵其 他对象的功能仅仅局限于同一计算机的不同 应用程序之间(LPC)。例如, Microsoft √ /isual basic可以通过COM通信机制控制和 操纵同一计算机中安装的 Microsoft excel的 个拷贝,但不能直接执行其他计算机上的 Excel
COM技术简介 ◼ 早期的COM ◼ 早期的COM技术不具备跨计算机的远程调 用(RPC)能力,这种通过通用接口操纵其 他对象的功能仅仅局限于同一计算机的不同 应用程序之间(LPC)。例如,Microsoft Visual Basic可以通过COM通信机制控制和 操纵同一计算机中安装的Microsoft Excel的 一个拷贝,但不能直接执行其他计算机上的 Excel
COM技术简介 COM的发展现状 COM已经得到广泛应用,并逐渐成为业界事 实上的标准。目前,全球范围内至少有 150,000,000个运行系统应用了COM技术 与此同时,COM还带来巨大市场
COM技术简介 ◼ COM的发展现状 ◼ COM已经得到广泛应用,并逐渐成为业界事 实上的标准。目前,全球范围内至少有 150,000,000个运行系统应用了COM技术。 与此同时,COM还带来巨大市场
本章主要研究内容 COM技术介绍及程序设计方法 DCOM和COM+技术介绍
本章主要研究内容 ◼ COM技术介绍及程序设计方法 ◼ DCOM和COM+技术介绍
OM基础—三个概念 COM组件 可独立发布的二进制组件 在 Windows平台上为DLL或者EXE COM对象 通过COM接口提供服务 符合OO中对象的基本概念 COM接口 客户与对象之间的协议,对象实现COM 接口,客户使用COM接口
COM基础——三个概念 ◼ COM组件 ◼ 可独立发布的二进制组件 ◼ 在Windows平台上为DLL或者EXE ◼ COM对象 ◼ 通过COM接口提供服务 ◼ 符合OO中对象的基本概念 ◼ COM接口 ◼ 客户与对象之间的协议,对象实现COM 接口,客户使用COM接口