认识一下Global.asa 文件
生活随笔
收集整理的這篇文章主要介紹了
认识一下Global.asa 文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.作用。
Global.asa?文件的作用主要是用于站點或虛擬目錄下程序的數據共享和多線程。
2.內容。在?global.asa?中,你可以聲明?Application?事件和?Session?事件,并可以聲明一些?Session?范圍或者?Application?范圍的對象
Global.asa?只能包含下面的內容:
1.Application?事件
2.Session?事件
3.OBJECT?聲明
4.TypeLibrary?聲明
3.使用。
每一個站點或虛擬目錄都可以有一個?global.asa?文件。這個文件一般存放在站點或虛擬目錄的根目錄下。
例如,假設我們創建了站點?mysite,如果要使?global.asa?對這個站點下的所有?ASP?程序起作用,那么,global.asa?就應該存放在?"/"?下;假設我們在站點根目錄下創建了一個虛擬目錄?demo,可以在?demo?下放一個?global.asa,從而為這個虛擬目錄下的ASP程序特別指定一個?global.asa。
4.代碼示例。
下面是一個用?global.asa內的Application和Session對象事件實現的在線人數統計。
<SCRIPT?LANGUAGE="VBScript"?RUNAT="Server">?
Sub?Application_OnStart
Application("ActiveUsers")?=?0
End?Sub?
Sub?Session_OnStart
Session.Timeout?=?20?
Application.Lock?
Application("ActiveUsers")?=?Application("ActiveUsers")?+?1?
Application.UnLock?
End?Sub?
Sub?Session_OnEnd
Application.Lock?
Application("ActiveUsers")?=?Application("ActiveUsers")?-?1?
Application.UnLock?
End?Sub?
</SCRIPT>
????注意:
1.多個?global.asa?可以同時存在,它們分布在不同的虛擬目錄下
2.如果為某個虛擬目錄下的Web程序指定了global.asa,那么站點根目錄下的global.asa將對這個虛擬路徑下的ASP不起作用
3.global.asa?是固有文件名,不能改變任何一個字母,但不區分大小寫
4.一個虛擬目錄下的Web程序只能有一個global.asa
5.Global.asa對用戶是不可見的,不在客戶端渲染輸出任何數據
特別提示
???????因為?global.asa中可以獲取Application和Session的事件發生和停止通知,所以作用非常大,通常用于在線顯示、訪問計數和聊天室中。
????本例代碼中主要用到Application?對象的?Lock和Unlock方法,還有Application的OnStart事件,Session的OnStart和OnEnd事件。
????Lock?鎖定Application對象,防止其他任何腳本訪問或修改Application,直到調用Unlock方法。
????Unlock?解除對Application對象的鎖定。
????Application_OnStart?在應用程序的第一個訪問者訪問應用程序中的任何頁面時觸發?。
????Session_OnStart?當訪問者第一次請求應用程序中的頁面時觸發。
????Session_OnEnd?當會話超時時觸發。
相關問題
????如何清空指定的?Session?值
????一般來說直接設置該?Session的值為空就行了。例如:
????S?ession("demo")=""
????
????當然,你也可以通過清除所有?Session的方式來達到同樣的目的,但不建議這樣做。例如:
????Session.abandon
Global.asa?文件的作用主要是用于站點或虛擬目錄下程序的數據共享和多線程。
2.內容。在?global.asa?中,你可以聲明?Application?事件和?Session?事件,并可以聲明一些?Session?范圍或者?Application?范圍的對象
Global.asa?只能包含下面的內容:
1.Application?事件
2.Session?事件
3.OBJECT?聲明
4.TypeLibrary?聲明
3.使用。
每一個站點或虛擬目錄都可以有一個?global.asa?文件。這個文件一般存放在站點或虛擬目錄的根目錄下。
例如,假設我們創建了站點?mysite,如果要使?global.asa?對這個站點下的所有?ASP?程序起作用,那么,global.asa?就應該存放在?"/"?下;假設我們在站點根目錄下創建了一個虛擬目錄?demo,可以在?demo?下放一個?global.asa,從而為這個虛擬目錄下的ASP程序特別指定一個?global.asa。
4.代碼示例。
下面是一個用?global.asa內的Application和Session對象事件實現的在線人數統計。
<SCRIPT?LANGUAGE="VBScript"?RUNAT="Server">?
Sub?Application_OnStart
Application("ActiveUsers")?=?0
End?Sub?
Sub?Session_OnStart
Session.Timeout?=?20?
Application.Lock?
Application("ActiveUsers")?=?Application("ActiveUsers")?+?1?
Application.UnLock?
End?Sub?
Sub?Session_OnEnd
Application.Lock?
Application("ActiveUsers")?=?Application("ActiveUsers")?-?1?
Application.UnLock?
End?Sub?
</SCRIPT>
????注意:
1.多個?global.asa?可以同時存在,它們分布在不同的虛擬目錄下
2.如果為某個虛擬目錄下的Web程序指定了global.asa,那么站點根目錄下的global.asa將對這個虛擬路徑下的ASP不起作用
3.global.asa?是固有文件名,不能改變任何一個字母,但不區分大小寫
4.一個虛擬目錄下的Web程序只能有一個global.asa
5.Global.asa對用戶是不可見的,不在客戶端渲染輸出任何數據
特別提示
???????因為?global.asa中可以獲取Application和Session的事件發生和停止通知,所以作用非常大,通常用于在線顯示、訪問計數和聊天室中。
特別說明
????本例代碼中主要用到Application?對象的?Lock和Unlock方法,還有Application的OnStart事件,Session的OnStart和OnEnd事件。
????Lock?鎖定Application對象,防止其他任何腳本訪問或修改Application,直到調用Unlock方法。
????Unlock?解除對Application對象的鎖定。
????Application_OnStart?在應用程序的第一個訪問者訪問應用程序中的任何頁面時觸發?。
????Session_OnStart?當訪問者第一次請求應用程序中的頁面時觸發。
????Session_OnEnd?當會話超時時觸發。
相關問題
????如何清空指定的?Session?值
????一般來說直接設置該?Session的值為空就行了。例如:
????S?ession("demo")=""
????
????當然,你也可以通過清除所有?Session的方式來達到同樣的目的,但不建議這樣做。例如:
????Session.abandon
轉載于:https://www.cnblogs.com/missthe/archive/2007/08/26/870311.html
總結
以上是生活随笔為你收集整理的认识一下Global.asa 文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谁吃了我的CHM
- 下一篇: 关于 MSDTC 分布式事务两个常见错误