该程序分两步:
第一步:是从由Delphi自动设置的内部Fintf变量调用Get Name。Fintf仅仅是一个指向对象真实接口的指针。因为现在正处于服务器本身当中,因此,这是指向你所创建的实际对象的真实指针。
第二步:是将函数结果包装起并把它送回客户端,你将通过调用GetReplyBuffer和PutWideText完成该步骤。
6、 接口定义语言
接口定义语言(IDL)用于定义对象的接口,一个对象的接口指定该对象所支持的类型和操作,因而唯一定义了可用于该对象的请求形式。所有接口均隐式从CORBA模块中定义的Object接口中导出。
接口定义语言(IDL)的重要特征是其语言无关性,这使得对象可用不同的程序设计语言构造,且依然可相互通信,CORBA规范通过精确定义基本数据类型的长度,保证了在异构硬件平台上的互操作性。
三、 Delphi4中CORBA客户和服务器对象分布式工作机理
Delphi4工具支持CORBA标准,并为开发分布式应用程序提供了优良的环境。
在Delphi4中,真实的存根与框架由Delphi4在创建CORBA对象时自动生成,并存放于CORBA对象_TLB.pas命名的文件中。存根与框架这对代理使客户感觉到好象真的与服务器直接通信,而它们的具体实现存在于服务器中。在Delphi4中ORB就是一组动态连接库,它们提供了网络传输层以下的通信机制。图中的OsAgent不是CORBA标准中的一部分,它的宗旨在于帮助客户机连接到服务器上去,并执行其它一些类似于负载均衡和重启崩溃等重要任务。当客户程序启动时,它使用ORB与OsAgent进行通信,使客户机自动连接到服务器上去,换句话说,OsAgent有目录服务功能,它能够自动找出对象的位置。应该指出的是,在实现分布式应用程度过程中,客户、服务器双方必须都安装有OsAgent程序,同时必须在通信之前启动了OsAgent服务。
四、 Delphi中两个重要的CORBA存储库
1、 Interface Reposity
Interface Reposity是一个用来存储有关对象的具体内容的地方。该资源库有三种用途:
1)、它为用户提供了一个场所,用户可以通过它来查看有关对象的详细信息。
2)、它提供了允许CORBA对方法调用进行类型检查的机制。
3)、它允许在运行期间对一个对象进行动态调用。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
任意云 | 合纵连横,微软+戴尔重构混合云的新局面
随着去年各行各业的“互联网+”战略全面启动,“在中国、为中国”的戴尔本着任意云战略,联合微软公有云Azure,优势互补,合纵连横,正在打开混合云市场的新局面。
-
增进离岸Java开发效率的十个提示
近日,Cygnet Infotech公司发布了一篇博文,谈到了如何增进离岸Java开发的效率。众多的ISV与软件厂商总是在不断寻找能以最低的代价实现其业务目标的解决方案。
-
Windows Server 2012云生态迅速崛起
微软Windows Server 2012云创益大赛日前在北京落下帷幕,大赛揭晓了团队赛获奖团队名单。
-
System Center 2012:QMD百万马力背后的私有云推手
对期待降低IT基础架构复杂度和IT成本的企业来说,云计算彻底改变了企业提供和使用 IT 服务的方式,并能带来更高生产力的基础架构,以及更易于预测的应用程序。