ActiveX技術

ActiveX是Microsoft提出的一組使用COM(ComponentObjectModel,部件對象模型)使得軟體部件在網路環境中進行互動的技術集。它與具體的程式語言無關。作為針對Internet套用開發的技術,ActiveX被廣泛套用於WEB伺服器以及客戶端的各個方面。同時,ActiveX技術也被用於方便地創建普通的桌面應用程式

技術產生背景,技術簡介,技術區別,套用及開發,發展現狀展望,

技術產生背景

隨著Internet/Intranet的普及,人們對網路應用程式開發提出了更高的要求。如:Web頁面需要更加豐富生動的多媒體內容,商業應用程式要求更高可靠性、更加靈活的網路套用軟體開發工具等等,特別是如何在Internet上共享微軟產品功能。於是微軟提出了ActiveX技術。

技術簡介

首先,ActiveX是一種標準。使用這個標準可以使用不同語言開發的軟體構件在網路環境中相互操作。它使得Internet超越靜態文本,利用多媒體效果和可互動的對象,向用戶提供更加主動有趣和更加有用的服務。另外,ActiveX也是開放技術的集合,它涵蓋了所有流行的Internet標準、語言和平台。通過連線Sun公司的Java技術和微軟公司的OLE組件技術,ActiveX給用戶和開發商提供了一個內容豐富的平台,在開發Internet新的應用程式的同時,可以保護他們以前在應用程式、工具和源碼上的投資。ActiveX標準包括控制項(Controls)、文檔(Documents)、腳本(Scripts)這三種最常用的技術,同時它也包括客戶機技術、伺服器技術以及工具和應用程式。下面分別介紹:
* ActiveX控制項
以前被稱為OLE控制項或OCX控制項,現在發展為能夠運行在Web頁面上的軟體構件。它提供了一些可互動的用戶控制功能,能夠使用戶不必打開其他應用程式,在Web瀏覽器中看到動畫、影像,聽到音樂。ActiveX控制項的一個主要優點是:它也能在當前許多流行的程式語言所寫的應用程式中重用。如: Java,Visual Basic,Visual C++等。目前,已有1000多個ActiveX控制項可以使用,範圍從小的定時器控制項到字處理器甚至Internet瀏覽器。
* ActiveX腳本
支持許多流行的腳本語言,包括Visual Basic Script 和JavaScript。腳本提供了在一個頁面中多個對象互動的功能,如ActiveX控制項,Java applets,ActiveX Documents。其中VisualBasic 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成為一種真正的分散式對象技術鋪平道路。

技術區別

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以及其它支持ActiveX的語言中重用這個定時器構件,不必自行開發(如圖一)。ActiveX比Java最大的優點就是保留了原有的技術投資,新的套用可以在老的基礎上繼續開發。@@11181000.GIF;圖1 ActiveX控制項的開發和使用@@另外,由於ActiveX的底層支持(COM)和Java在許多概念上十分相似,使得COM和Java的集成變得十分方便。通過集成,ActiveX擴展了Java語言的功能。現在,Java程式設計師可以利用多媒體效果,一個擴充的軟體對象集包括ActiveX控制項,ActiveX文檔和ActiveX腳本去增強Javaapplets的功能,如在Java applets中增加聲音、影像、列印、資料庫訪問,虛擬現實以及其他一些作業系統級的特徵。同樣,用其它語言開發的對象也可以連結Java applets。圖二顯示了Java與ActiveX集成。總之,ActiveX已經把目前最強有力的Web技術聯接到一起,Web開發者可以利用廣泛的技術在保留原有投資基礎上建立Internet的套用。@@11181001.GIF;圖2 Java和ActiveX的集成@@

套用及開發

ActiveX的套用及開發
目前ActiveX除了原先的單機套用外,更多地使用在Internet上。ActiveX使得創建具有特色的可互動式的web頁面更加快捷容易。由於有一千多個可重用的控制項,Web開發者不必再手工編寫互動頁面的每個部分。另外,由於有了ActiveX,開發人員不必在Web頁面中只使用一種開發方式。一個Web頁面可以包括Javaapplets、若干個ActiveX 控制項、ActiveX腳本或ActiveX文檔。簡而言之,ActiveX提供了一種粘合劑,把applets腳本、文檔、圖像以及其他一些ActiveX控制項集成在一個Web主頁中。同時,ActiveX也給開發者一個廣泛的工具選擇。ActiveX控制項可以使用Visual Basic,Visval C++,Dephi,Borland C++,Visual J++開發。ActiveX文檔可以使用廣泛的桌面應用程式創建,例如Excel,Word,PowerPoint等。ActiveX腳本可以使用VBScript以及JavaScript編寫。Java Applets可以使用一些PC工具開發商的開發工具創建,如Visual J++。無論使用什麼工具開發的對象通過ActiveX,都可以和另外一些對象集成在一個主頁里。

發展現狀展望

ActiveX的發展現狀與展望
ActiveX這種分散式對象技術與其他同類技術相比,最大優點在於保護開發者以前的投資,幾千個已有的控制項是這種技術的資本。同時,ActiveX又是一種開放的技術,它包容了現有的標準又鼓勵第三方參與。但是,ActiveX技術目前還處於不斷發展階段,許多方面需要改進。比如,一些ActiveX控制項體積還過於龐大,用戶瀏覽時進行下載速度較慢。另外,目前支持ActiveX的平台還只限於Windows系列,Unix和Macintosh對ActiveX的支持還在開發階段,其他平台的支持也需要時間,從這一點看,ActiveX的平台無關性不如Java。這些都會限制ActiveX近期的推廣和使用。然而,隨著網路頻寬的不斷提高,異質環境對ActiveX的支持,一種分散式對象化系統必然會形成。

相關詞條

熱門詞條

聯絡我們