本文向大家介绍VB开发分布式,可能好多人还不了解VB开发分布式,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。
微软推出的VB是一个功能强大的开发平台。它在“代码重用性”上地加强是一个引人注目的特点。我们可以将需要多次重复使用的功能单元开发成 activex组件(activex control,activex exe,activex dll),然后在新程序中象使用vb标准控件及类一样使用这些组件。 activex组件给开发网络应用带来很大方便。我们可以将这些组件分布在网络的不同机器上,构成分布式应用,就好象所有组件都在同一台机器上一样。很多朋友都有开发本地activex组件的经验,本文将结合实例介绍一下如何将activex组件分布在网络上构成分布式应用。
一、概述
“activex"是微软为分布式计算制定的一套标准,它的前身就是大家所熟知的”ole automation".当分布式应用通过网络通讯时,activex可以使用两种不同的机制对客户请求作出响应。一种称为“分布组件对象模式(dcom)”,只可以在windows nt和windows 95上使用;另一种是“远程自动化(remote automation)",它可以在16位环境下构造分布式应用。
这两种分布式机制,有着极其引人的特点:与组件物理位置的无关性。也就是说,当你构造一个activex组件时,无需知道它将分布在那一台机器上。同样的组件,即可以将它放在本机,也可以将它分布在其它机器上而不需要从新编译。这样,根据网络的性能和网络结构的变化,我们可以方便的调整组件的分布策略。
当然,用activex构建分布式应用的各个独立组件,还有其它优点:
构造远程组件和构造本地组件的编程方法一模一样,无须特殊的工程经验。可以用activex组件在服务器端实现复杂的商业规则。比起用dbms(如sql server)来完成同样的工作,我们有更好地编程、维护、排错手段。
有大量的商业组件可以使用。而且这样的组件会越来越多。我们只需将特殊的商业规则开发成组件,与购买的组件配合使用。
二、开发和调试
VB开发分布式组件和开发本地组件相同,调试也可以在本地完成,本文不在赘述。(可以参看VB所带的例子:\sample\clisvr\booksale \client\book_cli.vbp客户端程序;\sample\clisvr\booksale\client\book_svr.vbp服务器程序。)在开发分布式服务器段组件时,请注意下列问题:
服务器端的project应为activex exe(进程外的activex组件)。这也很容易理解,不可能在两台机器上完成同一个进程,所以,不可能使用activex dll(进程内的组件)。
在project properties对话框的组件栏目下,应设为remote server file.这样,在程序编译时会生成一个vbr文件,在生成安装盘时要用。大家知道,windows程序在系统注册表中有注册,此文件与注册有关。
class属性应设为mutiuse,以便多个客户应用可以使用它。
【编辑推荐】