[翻译]c和com的互操作_第1页
[翻译]c和com的互操作_第2页
[翻译]c和com的互操作_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、翻译 C# 和 COM 的互操作这篇文章将探讨一下 C# 和 COM 之间的相互操作性,本文分两个部分:第一部分讲述了什么是 COM ,第二部分讲述在 .NET Framework 中怎样应用 COM 。 第一部分:Component Object Model(COM) ComponentComponent 不是其他的什么,而是可以嵌入到其他程序构成的并可重用的二进制软件。它是通过提供的通用接口而和其他程序进行交互操作的,这样就允许任何语言写的两个不同的应用程序进行通信。 Component 的重要性当今开发的一个程序由于消耗的时间长,而且难度大,维护费高因此我们不能随便的将旧版本的程序给替换

2、为新版本的程序。这个问题的解决方案就是重用 Component 。 解决方案 这个问题的解决方案就是将很多程序用到原有的函数给替换,并将其封装的一个通用的函数中。这样客户端要调用这个函数时就可以调用这个通用的函数已达到重用的效果。在我们的项目里,我们创建了 5 个应用程序以使其他用户能够简单的将他应用到各种语言中。 COM 框架 为了能够让其他应用程序进行互操作必须遵循一定的规则,提供一个标准的接口。这样我们只需要一个标准的框架 ,而不要管他这个框架是谁开发的。COM 犹如绿色打印 如果所有程序都遵循着互操作的标准,不同人创建的应用程序间就可以相互操作,因此我们就可以开发我们所 需要的所有应用

3、程序公共特点的程序。 Microsoft 已经定义了一个标准模型以使的不同应用程序能够相互调用,这个模型就涉及到 COM 。他提供了相互调用不同程序解决方案的接口,无论是调用程序还是被调用的程序都必须遵循COM 规则。 COM 的行为就像绿色的打印一样,他只提供理论上的程序接口而不包含它的解决方法。 MicrosoftCOM 当我们应用 Window 注册器注册一个COM 或DCOM 对象时,我们必须引用每一个对象的 128 位的唯一标识符GUID 。无论什么时候一个客户端应用程序执行一个COM 或 DCOM 对象时,客户端应用程序将通过WindowsRegistry 应用 GUID 来引用其

4、对象。 COM 另一个特点就是无语言依赖性, COM 客户端和 COM 对象都具有相同的布局和行为,无须关心我们用何种语言来开发这个COM 。 COM这种无特殊语言依赖性,可以让一个由多个组成(Component) 部分的系统通过不同语言来开发。我们用什么语言来开发 COM 并没有关系。 (说明了 COM 的特点,无语言依赖性带来的好处) 一个 Component 的接口Microsoft 的 IDL COM 和 DCOM 的内在基本概念是接口,一个接口同意客户端和一个对象之间进行相互通信。如果我们定义接口比如 VB,我们必须用微软的InterfaceDefinition Language(IDL), 这个 IDL 必须用 MicrosoftInterface Definition Language 编译器 (MIDL) 。 GUID 在一个 COM 对象中我们定义的每一个接口都包含一个Universally Unique Identifier (UUID) , OS 就是利用这个来生

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论