概述
Counter 組件建立一個可建立、儲存、增長和檢索任何數量的獨立計數器的 Counters 對象。
計數器是一個包含整數的持續值。可以使用 Counters 對象的 Get、Increment、Set 和 Remove 方法控制計數器。一旦您建立了計數器,它將一直持續下去直到被刪除為止。
計數器不會在一個事件比如訪問一頁時自動增加。您必須使用 Set 和 Increment 方法人工的設定或增長計數器。
計數器不受範圍限制。一旦您建立了一個計數器,那麼您的網站上的任何頁都可以檢索和控制它的值。例如,若您在一個名為 Page1.asp 的頁上顯示和增加一個叫做 hits 的計數器的值,而又在另一個叫做 Page2.asp 的頁上增加 hits 的值,則兩頁將增加同一計數器。若您訪問 Page1.asp 時,計數器的值增加到 34,則訪問 Page2.asp 會將 hits 增加到 35。下一次訪問 Page1.asp,hits 將增加到 36。
所有計數器都儲存在一個單獨的名為 counters.txt 的文字檔中,它同 counters.DLL 檔案儲存在同一目錄下。
檔案名稱
counters.dll Counters 組件。
counters.txt 該檔案在一個網站上儲存所有獨立的計數器。counters.txt 是一個 UTF8 編碼檔案。您可以在計數器名稱中使用任何 Unicode 字元。
文法
將下列內容加入到 global.asa 檔案中在您的伺服器上可一次性建立 Counters 對象:
<OBJECT
RUNAT=Server
SCOPE=Application
ID=Counter
PROGID="MSWC.Counters">
</OBJECT>
登錄機碼
無。
注釋
在您的網站上僅建立一個 Counters 對象。這一單個 Counters 對象可以建立任意數量的獨立計數器。
注意 對於 Windows® 95 上的 Personal Web Server,已在預設的虛擬目錄下的 global.asa 檔案 中指定了一個 Counters 組件。可以通過調用 Counters.Get、Counters.Increment、Counters.Remove 和 Counters.Set 使用組件建立的 Counters 對象,就好象它是內建的一樣。您不可以建立 Counters 對象的其他執行個體。
方法
Get 返回計數器的值。
Increment 計數器的值加一。
Remove 從 counters.txt 檔案中刪除計數器。
Set 將計數器的值設為一個特定的整數。
樣本
通過將 ID 屬性設定為 Counter,在 global.asa 檔案中建立 Counters 對象的執行個體:
<OBJECT RUNAT=Server SCOPE=Application ID=Counter PROGID="MSWC.Counters">
</OBJECT>
然後就可以在某一頁上使用 Counters 對象建立全部所需的計數器:
There have been <%= Counter.Increment('defaultPageHits') %> to this site.
然後在另一頁上就可以使用下列方法增加計數器的值:
You are visitor number<%= Counter.Increment('LinksPageHits') %> to this page.
注意 該組件可從包含 IIS IIS Resource Kit 的 CD 中得到。
Get方法
Get 方法根據計數器的名稱返回此計數器的當前值。若此計數器不存在,則該方法建立它並將其置為 0。
文法
Counters.Get(CounterName)
參數
CounterName
包含計數器名稱的字串。
樣本
用 <%= Counters.Get(CounterName) %> 可顯示計數器的值。用 <% countervar = Counters.Get(CounterName) %> 將計數器的值賦給一個變數。
下列指令碼顯示關於所喜愛的顏色的民意測驗的投票記分。
<% If colornumber = "1" Then
Counters.Increment("greencounter")
Else
If colornumber = "2" Then
Counters.Increment("bluecounter")
Else
If colornumber = "0" Then
Counters.Increment("redcounter")
End If
End If
End If %>
<P>Current vote tally:
<P>red: <% =Counters.Get("redcounter") %>
<P>green: <% = Counters.Get("greencounter") %>
<P>blue: <% = Counters.Get("bluecounter") %>
Increment方法
Increment 方法根據計數器的名稱,將該計數器的值加 1,並返回計數器的新值。若計數器不存在,此方法將建立該計數器並將其值設為 1。
文法
Counters.Increment(CounterName)
參數
CounterName
包含計數器值的字串。
樣本
使用 <% Counters.Increment(CounterName) %> 可增加計數器的值。使用 <%= Counters.Increment(CounterName) %> 可增加和顯示計數器的值。
為了擷取計數器的值,可使用 Counters.Get。要將計數器的值設為一個特殊值,請使用 Counters.Set。
下列代碼實現聯機頁訪問計數器。
<P>There have been <%= Counters.Increment("hits") %> visits to this Web page.
</P>
在上面的樣本中,每次用戶端向伺服器發出頁請求時,都使用 Counters.Increment 將計數器的值加 1。
Remove方法
Remove 方法根據計數器的名稱,從 Counters 對象和 counters.txt 檔案中刪除計數器。
文法
Counters.Remove(CounterName)
參數
CounterName
包含計數器名稱的字串。
樣本
下列代碼從 counters.txt 檔案中刪除計數器 hitscounter 。
<% Counters.Remove(hitscounter) %>
Set方法
Set 方法根據計數器的名稱和一個整數參數,將計數器設定為該整數值,並返回此新值。若該計數器不存在,則 Counters.Set 建立計數器並將其值設為這一整數。
要擷取計數器的值,可使用 Counters.Get。要使計數器的值加一,可使用 Counters.Increment。
文法
Counters.Set(CounterName, int)
參數
CounterName
包含計數器名稱的字串。
int
CounterName 的新的整數值。
樣本
下列代碼將訪問計數器 pageHits 重設為 0。
<% Counters.Set(pageHits, 0) %>