ActiveX技术

来源:互联网 发布:软件用户使用手册 编辑:程序博客网 时间:2024/05/03 00:59
1.引言
随着Internet/Intranet的普及,人们对网络应用程序开发提出了更高的要求。如:Web页
面需要更加丰富生动的多媒体内容,商业应用程序要求更高可靠性、更加灵活的网络应用软
件开发工具等等,特别是如何在Internet上共享微软产品功能。于是微软提出了ActiveX技术


2.ActiveX的概念
首先,ActiveX是一种标准。使用这个标准可以使用不同语言开发的软件构件在网络环境
中相互操作。它使得Internet超越静态文本,利用多媒体效果和可交互的对象,向用户提供更
加主动有趣和更加有用的服务。
另外,ActiveX也是开放技术的集合,它涵盖了所有流行的Internet标准、语言和平台。
通过连接Sun公司的Java技术和微软公司的OLE组件技术,ActiveX给用户和开发商提供了一个
内容丰富的平台,在开发Internet新的应用程序的同时,可以保护他们以前在应用程序、工具
和源码上的投资。
ActiveX标准包括控件(Controls)、文档(Documents)、脚本(Scripts)这三种最常用的
技术,同时它也包括客户机技术、服务器技术以及工具和应用程序。下面分别介绍:
* ActiveX控件
以前被称为OLE控件或OCX控件,现在发展为能够运行在Web页面上的软件构件。它提供了
一些可交互的用户控制功能,能够使用户不必打开其他应用程序,在Web浏览器中看到动画、
影像,听到音乐。ActiveX控件的一个主要优点是:它也能在当前许多流行的编程语言所写的
应用程序中重用。如: Java,Visual Basic,Visaal C++等。目前,已有1000多个ActiveX控件
可以使用,范围从小的定时器控件到字处理器甚至Internet浏览器。
* ActiveX 脚本
支持许多流行的脚本语言,包括Visual Basic Script 和JavaScript。脚本提供了在一
个页面中多个对象交互的功能,如ActiveX控件,Java applets,ActiveX Documents。其中Vi
sualBasic Script是一个用于编写活动内容部件和Web页面的Visual Basic优化版本。开发
人员能够用它来链接和自动生成ActiveX控件或Javaapplets之类的程序部件,使之能够包含
脚本所规定的动作。
* ActiveX文档
能使你在Web浏览器中看到非HTML格式文档,例如Microsoft Excel,Word或Visio文件。
* Java虚机器
能使任何支持ActiveX的浏览器,例如:Internet Explorer3.0,运行Java applets并且将
ActiveX控件和Java applets集成。
* ActiveX服务器构架
提供了许多基于Web服务器的功能,例如:安全机制、数据库访问等。
目前,已有超过100家公司宣布支持ActiveX技术,并着手开发基于ActiveX的工具、应用
程序以及控件。另外,ActiveX也将被几种主要的操作系统支持,包括Window 95,Windows NT
,Macintosh,Unix。这不仅能给用户选择平台的自由,而且也为ActiveX成为一种真正的分布
式对象技术铺平道路。

3.ActiveX、OLE和Java
ActiveX涵盖了Java和微软的OLE部件技术,但与两者有所区别。
ActiveX与OLE都基于构件对象模型(Component Object Model,COM),但它们为开发者提
供了本质上不同的服务。COM提供了底层的对象束定机制,这种机制允许对象之间相互通信。
OLE利用COM提供应用程序的上层服务,例如: 对象的链接与嵌入,使用户能够创建复合文档。
另一方面,ActiveX提供了一种机制使控件能嵌入到Web页面中,并对事件作出响应。总的来讲
,OLE侧重于单机应用程序的重用和配合,而ActiveX更侧重于网络和Internet。采用ActiveX
技术,使台式计算机接口和Internet接口合二为一,消除了如文件之类的本地资源和网络资源
之间的差别,对应用程序和最终用户做到网络透明。
ActiveX与Java是两种不相同但相类似的技术。Java是一种平台无关的Intenet语言,用
Java写的程序是一系列虚机器字节代码,它可以在任何运行Java虚拟机(JVM)的平台上运行。
而ActiveX是一套技术规范,它本身与语言无关。利用ActiveX技术,不同的开发语言可以
互相利用已有的构件,这大大扩充了一种语言的功能。例如使用Visual C++创建一个定时器
构件,开发人员可以在Visual Basic,Dephi,Visual C++,PowerBuilder以及其它支持Active
X的语言中重用这个定时器构件,不必自行开发(如图一)。ActiveX比Java最大的优点就是保
留了原有的技术投资,新的应用可以在老的基础上继续开发。
@@11181000.GIF;图1 ActiveX控件的开发和使用@@
另外,由于ActiveX的底层支持(COM)和Java在许多概念上十分相似,使得COM和Java的集
成变得十分方便。通过集成,ActiveX扩展了Java语言的功能。现在,Java程序员可以利用多
媒体效果,一个扩充的软件对象集包括ActiveX控件,ActiveX文档和ActiveX脚本去增强Java
applets的功能,如在Java applets中增加声音、影像、打印、数据库访问,虚拟现实以及其
他一些操作系统级的特征。同样,用其它语言开发的对象也可以链接Java applets。图二显
示了Java与ActiveX集成。
总之,ActiveX已经把目前最强有力的Web技术联接到一起,Web开发者可以利用广泛的技
术在保留原有投资基础上建立Internet的应用。
@@11181001.GIF;图2 Java和ActiveX的集成@@

4.ActiveX的应用及开发
目前ActiveX除了原先的单机应用外,更多地使用在Internet上。ActiveX使得创建具有
特色的可交互式的web页面更加快捷容易。由于有一千多个可重用的控件,Web开发者不必再
手工编写交互页面的每个部分。另外,由于有了ActiveX,开发人员不必在Web页面中只使用一
种开发方式。一个Web页面可以包括Javaapplets、若干个ActiveX 控件、ActiveX脚本或Ac
tiveX文档。简而言之,ActiveX提供了一种粘合剂,把applets脚本、文档、图像以及其他一
些ActiveX控件集成在一个Web主页中。
同时,ActiveX也给开发者一个广泛的工具选择。
ActiveX控件可以使用Visual Basic,Visval C++,Dephi,Borland C++,Visual J++开发
。ActiveX文档可以使用广泛的桌面应用程序创建,例如Excel, Word,PowerPoint等。Activ
eX脚本可以使用VBScript以及JavaScript编写。Java Applets可以使用一些PC工具开发商的
开发工具创建,如Visual J++。无论使用什么工具开发的对象通过ActiveX,都可以和另外一
些对象集成在一个主页里。

5.ActiveX的发展现状与展望
ActiveX这种分布式对象技术与其他同类技术相比,最大优点在于保护开发者以前的投资
,几千个已有的控件是这种技术的资本。同时,ActiveX又是一种开放的技术,它包容了现有的
标准又鼓励第三方参与。
但是,ActiveX技术目前还处于不断发展阶段,许多方面需要改进。比如,一些ActiveX控
件体积还过于庞大,用户浏览时进行下载速度较慢。另外,目前支持ActiveX的平台还只限于
Windows系列,Unix和Macintosh对ActiveX的支持还在开发阶段,其他平台的支持也需要时间
,从这一点看,ActiveX的平台无关性不如Java。这些都会限制ActiveX近期的推广和使用。
然而,随着网络带宽的不断提高,异质环境对ActiveX的支持,一种分布式对象化系统必然
会形成。
 
原创粉丝点击