class="area">
從今天開始我們將正式學習 ASP 的精華部分 --ActiveX 組件。事實上,當你用 ASP 編寫服務器端應用程序時,必須依靠 ActiveX 組件來強大 Web 應用程序的功能,譬如:你需要連接數據庫,對數據庫進行在線操作或者對 WEB 服務器上的文件系統進行操作,亦或你需要一個 WEB 廣告交換程序,所有這一切你都必須通過調用 ASP 內建的 ActiveX 組件或自己編寫所需的組件來完成。
那麼,究竟什麼是 ActiveX 組件呢?它又是如何運作的呢?其實 ActiveX 組件是一個存在於 WEB 服務器上的文件,該文件包含執行某項或一組任務的代碼,組件可以執行公用任務,這樣就不必自己去創建執行這些任務的代碼。例如,股票行情收報機組件可以在 Web 頁上顯示最新的股票報價。當你在 WEB 服務器上安裝完 ASP 環境後,就可以直接使用它自帶的幾個常用組件,如 Database Access 組件。當然你也可以從第三方開發者處獲得可選的組件 , 也可以編寫自己的組件。你可以利用組件作為腳本和基於 Web 應用程序的基本構造塊,只要知道如何訪問組件提供的對象,即使你是位編寫腳本的新手,也可以在不了解組件運作方式的情況下編寫 ASP 程序。總而言之, ActiveX 組件使您不用學習復雜的編程就能夠寫出強大的 WEB 服務器端腳本。如果您是位 Web 應用程序的開發者,可以使用任何支持組件對象模型(COM)的語言來編寫組件,如, C、 C++、 Java 或 Visual Basic。如果你熟悉 COM 編程, ActiveX 組件就是 Automation 服務器。但是要在 Web 服務器上運行, ActiveX 組件不能有圖形用戶接口元素,如 Visual Basic 的 MsgBox 函數。組件是可以重復使用的。在 Web 服務器上安裝了組件後,就可以從 ASP 腳本、 ISAPI 應用程序、服務器上的其他組件或由另一種 COM 兼容語言編寫的程序中調用該組件。
那麼我們在 ASP 中應該如何調用組件呢?如前所述,組件是包含在動態鏈接庫 (.dll) 或可執行文件 (.exe) 中的可執行代碼。組件可以提供一個或多個對象以及對象的方法和屬性。要使用組件提供的對象,我們首先要創建對象的實例並將這個新的實例分配變量名。使用 ASP 的 Server.CreateObject 方法可以創建對象的實例。接著,使用腳本語言的變量分配指令為對象實例命名。創建對象實例時,必須提供實例的注冊名稱“PROGID”。如下要創建一個 Ad Rotator 對象的實例 :
< % Set MyAds = Server.CreateObject("MSWC.AdRotator") %>
我們必須使用 ASP 的 Server.CreateObject 方法來創建對象實例,否者 ASP 無法跟蹤腳本語言中對象的使用。
使用 HTML< OBJECT> 標簽同樣可以創建對象實例,但必須為 RUNAT 屬性提供服務器值,同時也要為將在腳本語言中使用的變量名提供 ID 屬性組。使用注冊名 (PROGID) 或注冊號碼 (CLSID) 可以識別該對象。下面的例子使用注冊名 (PROGID) 創建 Ad Rotator 對象的實例:
< OBJECT RUNAT=Server ID=MyAd PROGID="MSWC.AdRotator">< /OBJECT>
下面列出了 ASP 可安裝的常用組件。
Ad Rotator 創建一個 AdRotator 對象,該對象可按指定計劃在同一頁上自動輪換顯示廣告。
Browser Capabilities 創建一個 BrowserType 對象,該對象決定訪問 Web 站點的每個浏覽器的性能、類型及版本。
Database Access 提供用 ActiveX Data Objects (ADO) 對數據庫的訪問。
Content Linking 創建一個 NextLink 對象,該對象可生成 Web 頁內容列表,並象書一樣將各頁順續連接。
File Access 組件 提供文件的輸入輸出訪問。
Collaboration Data Objects for NTS 組件 可以快速、簡便的在 Web 頁上添加收發郵件功能。該組件只適用於 Internet Information Server for Windows NT? Server 。
MyInfo 創建一個 MyInfo 對象,該對象追蹤個人信息,例如站點管理員的姓名、地址及顯示選擇。
Counters 創建一個 Counters 對象,該對象可以創建、保存、增加或檢索任意數量的獨立計數器。
Content Rotator 自動翻轉 Web 主頁上的 HTML 內容字符串。
Page Counter 記錄並顯示 Web 頁被打開的次數。
現在 WEB 廣告幾乎充斥了整個網絡,那麼究竟如何在你自己的網站上建立一個符合廣告領域標准功能的廣告系統呢?答案是利用 ASP AD Rotator 組件 ! 它允許在每次訪問 ASP 頁面時在頁面上顯示新的廣告,並且提供了很強的功能,例如 : 旋轉顯示在頁面上的廣告圖象的能力、跟蹤特定廣告顯示次數的能力以及跟蹤客戶端在廣告上單擊次數的能力。 AD Rotator 組件的工作是通過讀取 AD Rotator 計劃文件來完成的,該文件包括與要顯示的圖象文件的地點有關的信息以及每個圖象的不同屬性,下面就是一個標准的 AD Rotator 計劃文件 :
---ADROT.TXT---
REDIRECT /scripts/adredir.asp
WIDTH 440
HEIGHT 60
BORDER 1
>
ads/homepage/chinabyte.gif