ActiveX是什麼?

2007-04-28 8:04 pm
ActiveX是什麼?

回答 (2)

2007-05-02 7:50 pm
✔ 最佳答案
●【網路快譯通】名詞解釋 - ActiveX
ActiveX是微軟以COM(Component Object Model)為基礎,並針對網路需求修改而成的技術,可以讓網路環境下的程式進行互動,而創造出互動性更高、內容更豐富的網頁。不過ActiveX過強的系統存取能力,卻成了惡意程式滋生的土壤,讓系統安全面臨更大危機。

近來系統安全的熱門話題已經從病毒、駭客轉移到間諜軟體和廣告軟體,從原本只被視為不痛不癢的侵擾(annoyance),搖身一變成為惡名昭彰的系統安全的威脅,間諜與廣告軟體大肆氾濫的原因和ActiveX技術脫不了關係。雖然ActiveX可以大幅提升程式開發和使用的便利,也帶來了不小副作用。到底什麼是ActiveX?它有什麼優點,有什麼安全風險?

ActiveX是由微軟所開發的一種技術的名稱,不過有人認為ActiveX不專指一種特定的技術,而與「廠牌名稱」的概念比較相近,實際上包含了許多項不同的技術。姑且不論兩種說法孰是孰非,可以確定的是,ActiveX技術是微軟以原來的COM(Component Object Model)為基礎,並針對網路需求修改而成,可以讓網路環境下的不同程式進行互動,透過它可以讓程式和網頁設計人員輕鬆建構動態的資訊表達方式,並且增加網頁的互動性,讓網頁更活潑。

經常和ActiveX搞混的是「ActiveX 控制項」(Active Control)。ActiveX是一項技術,而ActiveX控制項是根據ActiveX技術開發出來的獨立元件,這些元件可以隨意組合使用,例如許多防毒廠商的線上掃毒功能、網頁內嵌影片播放功能、以及各種令人討厭的工具列都是透過安裝相應的ActiveX控制項來達成目的。

ActiveX控制項的能力和一般Windows程式相同,也就是擁有完全存取電腦的能力,一般程式做的到的,ActiveX控制項也可以。這正是ActiveX被認為不安全的主因,試想我們使用IE瀏覽網頁時,因一時不察而同意安裝惡意的ActiveX控制項,如此一來我們的電腦就會完全暴露在風險中而任人宰割,這是多麼可怕的事。

為了控制強大的ActiveX控制項潛藏的風險,微軟發展了一套註冊系統(registration system),讓瀏覽器在下載控制項前,可以辨識控制項是否經過授權,以降低安全性風險。這就是我們上網會經常碰到的,詢問你是否同意安裝某項工具的對話盒。面對如此強大的ActiveX控制項,使用者的防身武器卻只有這個對話盒,也難怪ActiveX會成為系統安全的重大罩門。

面對種種潛藏的危機,一般使用者該如何自保?除了上網時提高警覺不要隨意安裝來路不明的工具外,還可以考慮使用IE以外較安全的瀏覽器,另外也可以安裝ActiveX相關工具,隨時掌握系統的狀況,確保電腦安全。

http://paper.udn.com/udnpaper/POH0025/73311/web/


●ActiveX Control
ActiveX元件,介面和Type Library
ActiveX元件簡單的說,就是一個系統層級的可重複使用元件。就像BCB的VCL元件可以讓你使用於任何的BCB應用程式之中一樣,ActiveX元件允許你使用它於任何支援ActiveX元件的軟體之中。例如BCB,Delphi,VB和IE都是支援ActiveX元件的軟體。

每一個ActiveX元件都提供了許多的特性和方法可以讓使用它的應用程式呼叫使用。ActiveX元件也可以和使用它的應用程式連結在一起。ActiveX元件所提供的特性、方法和事件主要是藉由COM模型之中所謂的介面(Interface)功能提供的。ActiveX元件是從COM模型之中的COM物件演化而來的,要瞭解ActiveX元件,程式師必須先對於COM物件有一個基本的瞭解。

但是當我們使用任何的OCX或是ActiveX元件的時候,BCB怎麼會知道這個COM 元件到底提供了那些介面,而每一個介面之中又有哪些的特性、方法和事件呢?由於Microsoft的COM物件是一個類似plug-and-play的軟體IC,任何支援COM物件的容器(container)工具,例如BCB和Delphi,都可以讓你加入這些軟體IC加以使用。由於一個COM物件可以使用在任何的容器工具之中,因此每一個COM物必須有一種機制能夠告訴容器工具這個COM物件可以提供的功能以及各種的特性。這個機制便稱為「Type Library」。

Type Library敘述了一個COM物件之內所有的資訊。雖然我們現在知道一個COM物件的所有特性資訊是儲存在Type Library之中。但是到底Type Library 是以什麼形式出現的?它是如何產生的?如何能夠讀取其中的資訊?

一般來說Type Library本身有數種不同的面貌。它可以是存在於一個檔案,或是和OCX/ActiveX物件本身儲存在一起。也就是說一個OCX/ActiveX的Type Library可以是存在於*.TLB的檔案之中,或是儲存在*.DLL,*.EXE,*.OCX,*.OLB的檔案之中。

http://dslab.ee.ncku.edu.tw/~eddie/Report/ActiveX_BCB.htm
2007-04-28 8:07 pm
ActiveX® 在廣義上是指微軟公司的整個COM架構,但是現在通常用來稱呼基於標準COM介面來實現對象連接與嵌入的ActiveX控制項。後者是指從VBX發展而來的,面向微軟的Internet Explorer技術而設計的以OCX為擴展名的OLE控制項。通過定義容器和組件之間的介面規範,如果編寫了一個遵循規範的控制項,那麼可以很方便地在多種容器中使用而不用修改控制項的代碼。同樣,通過實現標準介面調用,一個遵循規範的容器可以很容易地嵌入任何遵循規範的控制項。由於OLE在ActiveX控制項中的應用的普及,現在OLE技術中只有少數獨立於ActiveX技術,例如複合文檔。

一些瀏覽器,例如Internet Explorer、網景瀏覽器等等都不同程度上支持ActiveX控制項。這允許網頁通過腳本和控制項交互產生更加豐富的效果,同時也帶來一些安全性的問題。Internet Explorer和一些其他應用程序同時支持ActiveX Documents介面規範,允許在一個應用程序中嵌入另一個支持這個規範的應用程序。很多應用軟體,例如微軟的Microsoft Office系列和Adobe的Acrobat Reader都實現了這個規範。

伺服器端ActiveX組件通常是指運行在服務進程中的組件。一個典型應用是在IIS中運行的ASP腳本創建的ActiveX Data Objects,也稱ADO。

市場上有很多開發工具支持開發和使用ActiveX控制項。


收錄日期: 2021-04-12 01:59:36
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20070428000051KK01528

檢視 Wayback Machine 備份