Delphi知识中心
www.delphi.ee
提供Delphi技术知识
与Delphi程序员共同进步


在线服务QQ:99923144 随时恭候您的光临
首页 基础知识 WIN系统 组件使用 组件开发 数据库 ACTIVEX 多媒体技术 网络技术 关于
文章类别:ACTIVEX    你尚未登陆,会员功能无法使用,请从 网站首页 登陆。
  ActiveX技术在WEB页上的应用  
 
ActiveX技术在WEB页上的应用

Internet 的发展可以说是日新月异,这种快速的发展给人们带来了大量的机会。全世界的电信服务商都在寻找增强Internet在线服务的方法。在Internet上占有相当分额的公司之一是 Microsoft公司,它将OLE技术升级,这就是ActiveX技术。可以这么说,只要人们使用了ActiveX, Internet就与原来大不一样。

ActiveX究竟有什么特别之处呢?ActiveX使得编程人员能够创建ActiveX控件。ActiveX控件是可以作为Web页组成部分的特殊计算机程序。用户查看含有这种控件的WEB页时,他所连接的服务器计算机就自动将该控件送给用户,用户自己的浏览器就可以运行这个控件。这样就使得WEB开发人员能在其WEB页中加入可执行的内容。虽然JAVA小应用程序也能使开发人员创建可执行的内容,但是 ActiveX控件功能更强,因为它处理Internet 安全性的方法不同。

用ActiveX控件能做的事情很多,从给网页添加简单的动画到编写网页用户可联机使用的复杂的计算机程序,都不在话下。ActiveX控件可以是游戏、电子表格、图象处理程序、动画控制程序以及模拟程序,等等。ActiveX的功能如此强大,估计过不了多久,各大 WEB浏览器都将支持ActiveX控件。

1. ActiveX概述

对于Internet用户来说,ActiveX控件类似于JAVA小应用程序(applet).

如今,Internet 已经越来越普及了,软件开发商都希望在网上占有更大的分额。Sun公司主要设计JAVA程序语言,以使网络开发商能够在他们的网址下放一些小型应用程序。

为与JAVA竞争,Microsoft公司推出了一种OLE标准的新版本。这种新版本就是ActiveX,其核心就是ActiveX控件,它是JAVA的直接竞争者。

从表面上看,ActiveX控件与JAVA的小应用程序很类似,它能让网络开发商在他们的网址上放置一些小的应用程序。不过,尽管ActiveX控件的效果和JAVA相似,但实际上ActiveX控件与JAVA小应用程序有着完全不同的内涵。

在用户看来,ActiveX控件和其他类型的应用程序的唯一区别就在于,ActiveX控件不能依赖于它本身而存在。也就是说,ActiveX控件不能象其他应用程序一样直接运行,它必须作为应用程序的一部分,比如作为WEB页或者是其他类型的ActiveX的载体程序的一部分。

ActiveX控件的主要特征之一是它可以方便的加入到支持COM(组件对象模型,Component Object Model)的应用程序中。

ActiveX控件实际上是在OLE控件的基础上附加一些功能而形成的。同OLE一样,ActiveX控件同样描述那些能在应用程序中共享的部分。与OLE不一样的是,ActiveX控件能在 Internet上共享。

几年前,Microsoft发布了OLE 2.0。OLE 2.0不仅可以让程序设计人员共享应用程序中的数据,而且可以创建一个能在应用程序间共享的二进制对象。例如,OLE的编程人员可以创建一个拼写检查对象,该对象一旦挂入系统,就可以被其他应用程序使用。OLE的这项把大的应用程序分解成为可重复使用的小组件的功能使得创建新程序变得更加容易。程序设计人员在给新项目添加一些普通功能时,不再需要重新造新轮子,直接装上已有的OLE轮子就可以了。

OLE2.0的各个组件加在系统的注册表上,一旦它们被注册,用户就可以自由的使用这些组件。

OLE控件也可以在其他开发环境中使用,如Microsoft Access. Microsoft公司希望OLE成为共享组件的标准,所有的应用程序都可以用这种或那种方式支持OLE。实际上,只有支持OLE的应用程序才是功能齐全的Windows 9X应用程序。

现在,OLE已被赋予了全新的内容,并改名为ActiveX。ActiveX不但有OLE的一切功能,而且还增加了一些新功能,这样就可以把个人计算机的桌面带入网络中。

ActiveX与OLE的一个最大的不同之处就在于,ActiveX能够在网络环境中支持OLE特性。也就是说,一旦OLE把应用程序装入系统来共享组件,那么ActiveX就可以让应用程序在Internet 上共享组件。Internet的开发商仍可以在他们的WEB页(以下简称网页)上加入ActiveX控件。如果控件已在用户系统中注册,它就会自动的作为网页的一部分显示在用户的WEB浏览器上。

如果网页上的ActiveX控件没有在系统上注册,该控件就会自动下载到用户的计算机上,自动注册并自动显示在网页上。在这方面,ActiveX控件很象JAVA应用程序,他们都能为网页提供编程内容。ActiveX控件和JAVA应用程序都能被用做嵌入网页的小应用程序。网页不再被限定为静态的内容。目前,网页已能完成桌面应用程序能做的任何工作。

ActiveX控件与JAVA小应用程序的最大区别在于,JAVA小应用程序只能在网页上,而ActiveX控件由于支持OLE 的所有功能,因此它能被其他任何与ActiveX相兼容的程序共享。另一个比较大的不同之处在于ActiveX控件与JAVA应用程序处理网络安全的手段不同。ActiveX控件本身有一个安全系统提供给程序设计人员使用。

ActiveX控件能够 十分方便的提供数据库连接。通过ActiveX控件,用户可以有选择的与各种不同类型的数据库连接,从简单的Access到有存储过程的MS SQL Server数据库。

Internet变得丰富多彩,在过去的几年中,网页从仅有灰色背景的简单纯文本变成现在的既有动画,又有声音的的彩色画面。ActiveX控件可以为网页提供实时音频剪辑及视频片段,从而赋予网页以实时的价值。
2. 为何要用ActiveX

 

ActiveX不但能够在信息网的网页上使用,更可以应用在各式各样的程序语言里,当然,这些程序都是在微软视窗之下运转的。ActiveX的控件就象音响的组件(Component),可以依用户的需要和偏好拼装而成,图表、电子表格、动画等元件,皆可以轻易的应用在你的网页上,ActiveX就是要让你的网页“动”起来,ActiveX让元件软件(Component Ware)的梦想在网络时代成为事实。

在新世纪来临之前,目前兴起的元件软件市场将高达上百亿美圆的价值,不久的将来你将可以使用元件软件拼装你自己的套装软件,就如同今天你到电子街买主机板和CPU一样。主导目前元件软件走向的首推热门的JAVA和ActiveX,两者之间的千秋之战,是否象高手过招,两三下就见分晓了呢?

元件软件让设计师以组装元件的方式来开发应用程序,而这些在开放式网络环境中操作的ActiveX元件,不会局限于特定的语言和工具,而且容易组装、扩展,并可重复使用。ActiveX元件又可分为两种:

* 领域性元件(Domain Component ),主要是结合各领域的专业元件,如金融、制造、旅游业等。

* 共通性元件(common Component),主要是技术方面、环境方面的功能元件,如数据库、用户界面、电子表格、Internet、工作流程等元件。

 

未来的信息网与你的电脑运作将完全结合成一体,网络信息与本机的信息将可以互通无阻,而网页元件的内容更是包罗万象,便捷多样的开发工具也逐渐成熟,目前的Visual Basic、Delphi等开发工具,都已略具有元件组装工具的雏形,请参考图1里与ActiveX相关的语言与工具。

网络语言和浏览器的大战非常精彩,SUN 的JAVA掀起网络旋风,网景的JavaScript借助东风固守阵地,而微软的ActiveX加上VBScript更是来势汹汹。

 

开发工具 HTML网页

* Visual Basic
* Visual C++
* Delphi
* PowerBuilderScript语言
* Visual J++VBScript
* OthersJavaScript

 

 

 

 

 

编辑软件

* Word
* Excel
* Powerpoint
* 任何OLE兼容软件

图1 AcitveX与相关的语言和工具

 

1. 应用ActiveX的三种形式

 

3.1 ActiveX Control

如果设计人员要加强客户端的网络交互能力,有两种不同层次的做法:那就是元件(Component)与脚本(Scripting)的支持。从网页元件的角度来看,Navigator 提供的是applet,而Explorer提供的则是控件和Applet。当HTML网页需要用到某个元件时,Explore便可以加载该元件,替它安排显示区域,然后执行。这些元件就象在浏览器里执行的小程序。

ActiveX控件是一个开放结构式的Internet对象引用技术,它不是一个特定语言的产物,但是它提供了非常实用的网页组成对象(Component Object)。不同语言撰写的ActiveX控件都可以应用在微软的Explorer浏览器上,每一个控件就如同一个有既定功能的IC,经由适当的接线组合,你可以将一群Chip Set组成功能超强的网页,内含动画、多媒体,或者电子表格,你想得到的功能大概都有一些控件可以为你效劳。

3.2 ActiveX Scripting

就脚本支持方面而言,网景提供了JavaScript的功能;而微软 采用VBScript和Jscript。在网页里的脚本,不管用上述两种中的哪一种,都可以与网页里的对象以及浏览器环境,彼此进行交互操作。

Explorer提供非常灵活的脚本语言处理机制,因此未来在语言的扩充和调整上都是轻而易举的。目前我们可以使用Jscript 和VBScript来撰写处理网页的脚本程序,并直接加以测试,简捷而贴切,省掉了一般电脑语言编译及执行上的限制,未来可能会有更多的选择。

3. ActiveX Document

 

微软巧妙的使用了渐进式的元件结构,在基层的应用程序是以一群元件所组成的,他们之间可以互相沟通,也可以与 LAN或Internet资源沟通。在上一层,则有容器(Container)对象负责管理数据的类别,以及进行数据显示、处理的应用程序。这种威力文档基本上是源自DocObject的概念,如今在ActiveX的旗下以新名称出现。

Explorer是ActiveX对象的容器程序,除了浏览网页的功能以外,同时也可以用来显示OLE的复合文档。你可以便捷的在浏览器里使用Word 或Excel,因此Office程序所处理的文件可以和网页结合在一起。

 

 

在线服务QQ:99923144 Delphi程序员QQ群(139442)
Delphi知识中心 www.delphi.ee 最专业的Delphi技术资料网站