<<<返回

显示Application对象
绝大部分Application变量存放于contents集合中，当你创建一个新的application变量，其实就是在contents集合中添加了一项，例如，下面两个脚本是等效的： <%Application(“Mycompany”)=”北京xxx网络”> <%Application.contents(“Mycompany”)=”北京xxx网络”> 由于Application变量存放在集合里面，那么如果想要全部显示，其方法用户应当已经知道了，不错，和以前的一样，例如For Each循环。
<%
FOR EACH thing IN Application.Contents
Response.Write(“<BR>”&thing&Application.Contents(thing))
NEXT
%>
显示结果无须赘述，自然，以前提到的显示集合中所有变量的其他方法一样适用,包括进行统计的Count方法。
Application事件
和Session事件一样，Application也有两个时间Application_OnStart和Application_OnEnd，第一个事件在Application开始时触发，后者在结束时触发。
什么时候application开始呢？不，不是网站一开始，是第一个请求Application的页面被调用。
一个Application的OnStart事件肯定是在Session_Start事件之前的。不过，Application不会象Session那样在一个新用户请求后就触发，Application只触发一次，就是第一个用户的第一次请求。
Application_OnEnd事件只有在服务终止或者该application卸载时才会触发，例如，你在Internet Service Manager中关闭了网络服务。，那么Application_OnEnd事件就会触发，如果你针对单独目的使用application，这个事件可以通过application在利用Unload按钮卸载时进行触发。一个Application_OnEnd事件肯定发生在Session_OnEnd事件之后。
Application_OnStart和Application_OnEnd事件都是触发一个也是唯一一个脚本程序。而且这些事件都在一个文件中，那就是在Session事件中提到的Global.asa文件，下面为了加深了解，再次给出其结构：
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Application_OnStart
END SUB
</SCRIPT>
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Application_OnEnd
END SUB
</SCRIPT>
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Session_OnStart
END SUB
</SCRIPT>
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Session_OnEnd
END SUB
</SCRIPT>
有关Session的事件我们认为你已经在第16章学的很不错了，那么其余的两个就是我们现在要介绍的Application事件。
这里面和Session事件一样限制的是，你不能使用HTML标志，不能进行任何输出，不能将语句写出子程序或者写成其他方式。因此，编写时要特别小心。
Application_Onstart事件一般是用来初始化这个Application的变量，例如下面用Application_Onstart事件和Session_OnStart事件来进行访问人数统计：
<Script Language=VBScript RUNAT=Server>
SUB Application_OnStart
Application(“TotalUsers”)=0
END SUB
</SCRIPT>
<SCRIPT Language=VBScript RUNAT=Server>
SUB Session_OnStart
Application.Lock
Application(“TotalUsers”)=Application(“TotalUsers”)+1
Application.Unclock
END SUB
</SCRIPT>
在Application_OnStart事件中只有一个语句将TotalUsers变量置0，只有网站开始后这个脚本才能执行。
Session_OnStart事件在每一个用户到达后都都将TotalUsers加1，同时使用Lock方法防止冲突。
这样，在你希望显示访问人数的页面上，加入下面脚本：
<%=Application(“TotalUsers”) %>