什麼是ActiveX 控制項?概念、運作方式
什麼是 ActiveX 控制項?
ActiveX 控制項是使用 Microsoft ActiveX 技術的元件。ActiveX 控制項可以由網頁瀏覽器自動下載和執行。ActiveX 不是一種程式設計語言,而是應用程式應該如何共用資訊的一組規則。
ActiveX 控制項是以 Microsoft 元件物件模型 (COM) 為基礎的已編譯、可重複使用的軟體元件。ActiveX 控制項 (先前稱為 OLE 控制項) 可以組合為預製元件,以協助開發人員建置新的應用程式。
程式設計師可以使用多種語言開發 ActiveX 控制項,包括 C、C++、Visual Basic 和 Java。
ActiveX 控制項安裝權限
ActiveX 控制項類似於 Java 小程式。不過,與 Java 小程式不同的是,ActiveX 控制項具有 Windows 作業系統的完整存取權。這賦予了它們比 Java 小程序更多的功能,但這種功能也伴隨著一定的風險,即小程序可能會損壞您計算機上的軟件或數據。為了控制此風險,Microsoft 開發了註冊系統,以便瀏覽器可以在下載之前識別和驗證 ActiveX 控件。Java 小程式和 ActiveX 控制項之間的另一個差異是,Java 小程式可以寫入為在所有平台上執行,而 ActiveX 控制項目前僅限於 Windows 環境。
ActiveX 控制項如何運作?
ActiveX 控制項可以在自己的視窗中繪製自己、回應滑鼠按兩下等事件,以及透過屬性和方法進行管理。ActiveX 控制項無法作為獨立程式執行,但必須載入控制項容器,例如 Microsoft Visual Basic 或 Microsoft Internet Explorer。ActiveX 控制項通常會提供使用者介面,而且通常設計為在用戶端上執行。
ActiveX 控制項通常用來為網頁提供動態功能,例如,將即時股票行情新增至網頁的股票代碼控制項、進階使用者介面導覽工具,以及將動畫功能新增至頁面的動畫控制項。
ActiveX 控制項可以使用 HTML 標籤內嵌至超文字標記語言 (HTML) 頁面。如果使用者嘗試使用 Web 瀏覽器存取這類頁面,且其系統上未安裝內嵌的 ActiveX 控制項,則可以使用標籤的 CODEBASE 屬性中指定的 URL 自動下載控制項。下載並安裝 ActiveX 控制項並安裝到使用者的系統上之後,瀏覽器會繼續使用快取的控制項,直到伺服器上有更新版本為止。
以下是包含 CODEBASE 屬性的典型標籤範例:
<OBJECT ID="BoomButton" WIDTH=225 HEIGHT=35 CLASSID="clsid:56F1BF40-B2D0-11d0-A6D6-00AA00A70FC2" CODEBASE="http://example.microsoft.com/AControl.cab# Version=1,0,0,1"> </OBJECT>
惡意 ActiveX 控制項
惡意 ActiveX 控件可能會損壞使用者計算機上的軟件或數據。為了協助使用者判斷 ActiveX 控制項是否可以安全安裝,Microsoft 開發了一種稱為 Authenticode 的程式代碼簽署技術,該技術會使用知名安全性機構 (例如 VeriSign Inc.) 所發出的數位簽章來識別控制項的建立者。