ActiveClient是一种交叉平台 。Microsoft的技术纵然是独家所有,但也希望将这种技术向多个OS开放 。具体实施计划是使用脚本引擎(ScriptingEngine) 。这种脚本引擎是由标准的HTML和带有Microsoft特色的Java虚拟机(JVM)、Microsoft的VBScript与JScript所构成的 。ActiveClient组装进了Microsoft的IE3.0和4.0,通过ActiveX,可以变成用户的C/S应用的一部分 。
从清一色采用Windows的企业用户来看,Active平台可以提供坚固的、具有可缩放性的服务器应用开发平台 。ActiveServer在TP监视器这类高端产品的场合,也利用常见的一些工具和技术 。因此,小型工作组和Intranet应用不会超越ActiveServer的能力 。Active平台的目标机虽是异种机环境,但由于过分依赖IE,所以不能驱动客户端 。尽管在一些非Windows平台上也推出了Explorer,但最好的支持、最新版本的Explorer还是在Windows上 。
三、ActiveX的进展
1.向分布计算扩充
COM的最初版本假定COM对象及其客户端是在同一个机器上运行(可以在同一个进程内,也可以在不同的进程内),DCOM是ActiveX家族中的重要成员 。后来,它在Windows95中也能使用 。DCOM对于客户端制作COM对象、进行交互的方法没有做任何改变 。
客户端使用完全相同的代码,可以访问本地以及远程对象 。但许多场合下,客户想使用少数的DCOM附件 。DCOM备有分布式安全保密机制,提供认证和数据加密 。在1998年要发布的WindowsNT5.0中,要将Kerberos等安全保密协议,追加到DCOM中 。DCOM已能够利用域名服务等简洁的目录服务,以用于搜寻在其他机器上的COM对象 。NT5.0要追加对ActiveDirectory的支持 。ActiveDirectory是基于域名服务和轻型目录访问协议的 。
DCOM的劲敌,此前一直是OMG(ObjectManagementGroup)的CORBA(CommonObjectRequestBrokerArchitecture) 。它被组装进了Iona的Orbix和Visigenic的VisiBroker等产品中 。不久前,另一种支持分散对象的技术——Java的远程方法调用出台了 。无论是CORBA,还是DCOM,都能在多种语言写的对象间进行通信 。而RMI却不同,它只限于在由Java实现的对象间进行通信 。显然,这是个制约 。但RMI使用起来非常简单 。另外,RMI的开发者可以用Java来设计协议规范 。因此,在语言的功能上,可以做得浑然一体 。若写一个只处理两三个客户端的DCOM服务器,还是比较简单的 。但是,要构筑一个高效处理几百、几千个客户端的DCOM服务器,则相当之难 。
为了便于编写可缩放的DCOM服务器,Microsoft发布了事务处理服务器(MTS) 。MTS在支持事务处理的同时,也提供自动生成线索和智能对象的重复使用等服务 。MTS使可缩放服务器的制作变得相当简单 。即使是无需事务处理的应用,使用MTS也有好处 。实际上,Microsoft鼓励人们用VB来写MTS应用 。这与开发业务服务器的传统手法不同,所有的MTS应用,都是作为一个以上的COM对象来编写,且必须以DLL来实现 。一般情况下,客户端看不到MTS 。客户端只管一如既往地制作、使用COM对象即可 。
2.组件的标准化
基于组件的应用开发,其方法和组装电子装置一样,可以用已制作好的组件部件来构筑应用 。桌面用的、基于COM的组件叫做ActiveX控件 。所谓ActiveX控件不过是遵从一定的标准、与客户端交互的COM对象而已 。
例如,ActiveX控件必须通过Automation(即使用dispinterfaces)来公开方法 。用这个被标准化的交互功能,可以在多个不同的上下文中,使用同一个控件 。在这个标准接口的"幕后",ActiveX控件几乎是什么都能执行 。现在,许多软件公司都能提供实现各种功能的控件 。
ActiveX控件是作为DDL编写的,为此,必须装载到某个容器中 。ActiveX控件的原型容器是VB,除此之外,还有多种容器可供选择 。目前,一个非常重要的控件容器是Microsoft的Web浏览器InternetExplorer 。
推荐阅读
- 天然肠衣是什么做的
- 大豆的古名是什么
- 柠檬不开花是什么原因及解决方法
- 圆明园的旅游攻略是什么
- 增值税起征来自点新规定是什么
- 四合礼是什么
- 汽车么苏没妒冷冻液的作用,如果冷冻的口术井致液没有了会是什么后果
- 吃空饷是什么意思?
- 牛奶加热后的奶皮是什么成分
- precious是什么 precious的用法总结大全