ActiveX
ActiveX |
ActiveX 是一個開放的集成平台,為開發人員、 用戶和 Web生產商提供了一個快速而簡便的在 Internet 和 Intranet 創建程序集成和內容的方法。 使用 ActiveX, 可輕鬆方便的在 Web頁中插入 多媒體效果、 交互式對象、以及複雜程序,創建用戶體驗相當的高質量多媒體CD-ROM 。
目錄
簡介
ActiveX組件實際上是指一些可執行的代碼或一個程序,比如一個.EXE、.DLL或.OCX文件,通過ActiveX技術,程序員就能夠將這些可復用的軟件組裝到應用程序或者服務程序中去,嵌入到網頁中,隨網頁傳送到客戶的瀏覽器上,並在客戶端執行。微軟定義根據微軟權威的軟件開發指南MSDN(Microsoft Developer Network)的定義,ActiveX插件以前也叫做OLE控件或OCX控件,它是一些軟件組件或對象,可以將其插入到WEB網頁或其它應用程序中。
評價
現在開始闡述ActiveX、OLE和COM的關係。首先,讓大家有一個總體的概念,從時間的角度講,OLE是最早出現的,然後是COM和 ActiveX;從體系結構角度講,OLE和ActiveX是建立在COM之上的,所以COM是基礎;單從名稱角度講,OLE、ActiveX是兩個商標名稱,而COM則是一個純技術名詞,這也是大家更多的聽說ActiveX和OLE的原因。既然OLE是最早出現的,那麼就從OLE說起,自從 Windows操作系統流行以來,「剪貼板」(Clipboard)首先解決了不同程序間的通信問題(由剪貼板作為數據交換中心,進行複製、粘貼的操作),但是剪貼板傳遞的都是「死」數據,應用程序開發者得自行編寫、解析數據格式的代碼,於是動態數據交換(Dynamic Data Exchange,DDE)的通信協定應運而生,它可以讓應用程序之間自動獲取彼此的最新數據,但是,解決彼此之間的「數據格式」轉換仍然是程序員沉重的負擔。對象的鏈接與嵌入(Object Linking and Embedded,OLE)的誕生把原來應用程序的數據交換提高到「對象交換」,這樣程序間不但獲得數據也同樣獲得彼此的應用程序對象,並且可以直接使用彼此的數據內容,其實OLE是Microsoft的複合文檔技術,它的最初版本只是瞄準複合文檔,但在後續版本OLE2中,導入了COM。由此可見,COM是應OLE的需求而誕生的,所以雖然COM是OLE的基礎,但OLE的產生卻在COM之前。COM的基本出發點是,讓某個軟件通過一個通用的機構為另一個軟件提供服務。COM的第一個使用者卻是OLE2,所以COM與複合文檔間並沒有多大的關係,實際上,後來COM 就作為與複合文檔完全無關的技術,開始被廣泛應用。這樣一來,Microsoft就開始「染指」通用平台技術。但是COM並不是產品,它需要一個商標名稱。而那時Microsoft的市場專家們已經選用了OLE作為商標名稱,所以使用COM技術的都開始貼上了OLE的標籤。雖然這些技術中的絕大多數與複合文檔沒有關係。Microsoft的這一做法讓人產生這樣一個誤解OLE是僅指複合文檔呢?還是不單單指複合文檔?其實OLE是COM的商標名稱,自然不僅僅指複合文檔。但Microsoft自己恐怕無法解釋清楚,這要花費相當的精力和時間。於是,隨着Internet的發展,在1996年春,Microsoft改變了主意,選擇ActiveX作為新的商標名稱。ActiveX是指寬鬆定義的、基於COM的技術集合,而OLE仍然僅指複合文檔。當然,ActiveX最核心的技術還是COM。ActiveX和OLE的最大不同在於,OLE針對的是桌面上應用軟件和文件之間的集成,而 ActiveX則以提供進一步的網絡應用與用戶交互為主。[1]