荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: Second (石开), 信区: Program
标  题: [转载] 如何通过COM 接口传送C++对象
发信站: 荔园晨风BBS站 (Thu Jul 19 08:36:51 2001), 转信

http://www.csdn.net/develop/down/Com_object.pdf

[导读:] 本文将介绍如何通过COM 接口传送C++对象,要做到这一点,客户和服务器部
分都要用Visual C++
写,你还要了解建立COM 客户和服务器的要点,以及对COM 调度的基本知识。

序 言
我 已经不大记得如何使用C 和Pascal 这些面向过程的语言编程了,面向对象编程的功
能是如此的强大,通过类和对象,就可以轻松地编程和解决设计上遇到的问题。不过有
些地方仍令我不得不放弃使用对象,其中之一是通过接口调用COM 的方法。COM 要求客
户和服务器之间有高度的独立性。在调用方法的时候,接口只提供较有限的数据类型。
如果你正在使用基于IDispatch 的接口,可供选择的数据类型就更加有限了。

使 用有限的数据也可以,COM 没有一个显而易见的方式来传送对象,因此也不能传送自
定义的数据结构。幸运的是,这个问题是可以解决的,而且并不是太难。你只需要知道
COM 和MFC 的一些技巧。

在 继续深入之前,我们先来看一下COM 的限制。这些限制并不是COM 开发者的疏忽。他
们限制通过接口传送的数据类型,是有一些颇恰当的理由的,列举如下:

 1 、.象C++对象这些特别的类型只对C++的程序是有用的。Visual Basic 或者Java 程
序都用不上C++对象。

2 、.拷贝如对象这样复杂的结构可做到很复杂,标准的装配代码只能处理其中一些数据
类型。

  COM 的设计是为了与其它的操作系统兼容的(虽然仅有一些其它的操作系统支持COM
)。因此必须使用标准的数据类型。

通 过COM 接口来传送普通的指针在大多数的情况下都不行,接口是为了限制客户和服务
器端的接合。传送对象则需要更多的接合。

--
                            既然热爱生命
                            那么,
                            一切都在意料之中。

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.28.190]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店