ASP入门(十五)- Global.asa

Global.asa 文件是一个可选文件,它可包含被 ASP 应用程序中每个页面访问的对象、变量和方法的声明。所有合法的浏览器脚本都可以在 Global.asa 中使用。

Global.asa 文件只能包含 Application 事件Session 事件、<object> 声明TypeLibrary 声明#include 指令这几种内容。

Global.asa 文件必须放在 ASP 应用程序的根目录中,而且每一个应用程序只能有一个 Global.asa 文件。

Global.asa 中的事件

Global.asa 文件中应当包含 4 个 Sub 过程,并且它们的名字是固定的,这样 IIS 在处理 ASP 脚本时,就可以自动执行这些过程了,一个标准的 Global.asa 的代码结构如下:

<script language="vbscript" runat="server">
Sub Application_OnStart()
'some code
End Sub

Sub Application_OnEnd()
'some code
End Sub

Sub Session_OnStart()
'some code
End Sub

Sub Session_OnEnd()
'some code
End Sub
</script>

首先,这里并不是以 <% %> 定界符来包含代码的,而是以 <script> 标签来包含相应的代码,否认会出现错误。

Application_OnStart 此事件会在整个网站第一次开启时触发,此事件会法正在 Web 服务器重启或者 Global.asa 文件被编辑之后。Session_OnStart 事件会在此事件发生之后立即发生。

Session_OnStart 事件会在每当新用户请求网站的ASP程序的第一个页面时发生。也就是IIS为用户分配 SessionID 时触发。

Session_OnEnd 事件会在每当用户结束 Session 时发生。这与 Session.Timeout 的设定有关系,在规定的时间(默认时间为20分钟)内如果用户没有请求任何页面,用户 Session 就会结束,此时 Session_OnEnd 事件也会被触发。

Application_OnEnd 事件会在最后一个用户结束其 Session 之后发生。典型的情况就是,Web 服务器关机或重启,或者 IIS 管理器中对站点进行关闭操作。

限定

Application_OnStart、Application_OnEnd、Session_OnStart、Session_OnEnd 四个事件的子例程中可使用的对象,详见下表

 Server 对象Application 对象Session 对象其他任何内建对象
Application_OnStart  
Application_OnEnd  
Session_OnStart
Session_OnEnd 

利用 Global.asa 制作在线人数计数器

我们利用 Global.asa 文件中 Session 事件特性来实现一个在线人数的计数器,在每个用户第一次访问站点时,我们会将 Application 中保存的当前人数增加,当用户离开此站点并且 Session 超时后,我们会在 Application 中保存的当前人数减少。

下面是 Global.asa 文件中的源代码:

<script language="vbscript" runat="server">
Sub Application_OnStart()
  Application("visitors") = 0
End Sub

Sub Application_OnEnd()
End Sub

Sub Session_OnStart()
  Application.Lock()
  Application("visitors") = Application("visitors") + 1
  Application.Unlock()
End Sub

Sub Session_OnEnd()
  Application.Lock()
  Application("visitors") = Application("visitors") - 1
  Application.Unlock()
End Sub
</script>

我们这里主要用了 Session_OnStart 、 Session_OnEnd 和 Application_OnStart 三个事件。

  • Application_OnStart 中的代码使得网站开启时初始化 Application 中的 visitor 为 0。
  • Session_OnStart 中的代码使得使得 Application 中的 visitor 加1。
  • Session_OnEnd 中的代码使得 Application 中的 visitor 减1。

将此 Global.asa 放置到站点的根目录下,然后你可以在你的 ASP 文件中访问到 Application  的 Visitor 的值了,如下代码:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Dim numVisitors
numVisitors = Application.Contents("visitors")
Session.Timeout = 1
%>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Global.asa 统计在线人数</title>
</head>
<body>
<h3>当前在线人数:<%=numVisitors%></h3>
</body>
</html>

示例代码下载

Global_Visitors.RAR

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: mingw-w64-install.exe 是一个用于安装mingw-w64编译器的可执行文件。mingw-w64编译器是一种开源的编译器,可以在Windows操作系统上编译C和C++程序。它提供了一些常用的工具和库,可以帮助开发人员快速开发和调试程序。如果您需要在Windows上编译C或C++程序,可以考虑安装mingw-w64编译器。 ### 回答2: mingw-w64-install.exe是一款免费、开源的Windows版本GCC编译器套件。它可以在Windows平台下运行并编译出包括可执行程序、库文件以及DLL等多种形式的应用程序。 这个工具搭载了一系列免费的、开源的GNU工具和库。其中包括了编译器和调试器工具,例如C/C++、Objective-C/C++、Fortran、Ada、OpenMP等。同时,它还支持编译WEB应用程序,包括ASP.NET、Drupal、Joomla等。 此外,mingw-w64-install.exe还提供了一些辅助工具,如GDB(GNU调试器)、make、dlltool等。这些工具可以在Windows下为开发者提供调试和构建的支持,大大提高开发的效率。 用户可以从官方网站下载mingw-w64-install.exe,并根据自己的需求进行安装。安装完成后,用户可以使用命令行或者集成开发环境进行编译。同时,mingw-w64-install.exe也提供了一些额外的包可以下载,用户可以根据需要安装。 总之,mingw-w64-install.exe是一款非常优秀的Windows版本GCC编译器套件,提供了完整的编译工具链,对开发者而言具有非常重要的价值。无论是对于个人开发者还是企业来说,这个工具都是非常值得使用的。 ### 回答3: mingw-w64-install.exe是一种将MinGW-w64安装到Windows操作系统的可执行文件。MinGW-w64是一款开源的轻量级编译器,可将C/C++代码编译成可在Windows操作系统上运行的可执行文件。mingw-w64-install.exe程序是该编译器的安装程序,可以将MinGW-w64安装到Windows环境中,供开发人员使用。 MinGW-w64编译器支持Windows操作系统的多个版本和架构,在Windows下可以使用命令行或集成开发环境(IDE)进行编译。这个编译器支持多个目标平台,包括x86、x64、ARM等。 使用mingw-w64-install.exe进行安装非常简单。首先,用户需要从MinGW-w64官方网站上下载mingw-w64-install.exe程序。安装程序的最新版本可以在该网站上找到。一旦下载完成,用户只需点击该程序的运行按钮,然后按照屏幕上的提示进行安装。 在安装过程中,用户可以选择安装哪个版本的MinGW-w64编译器以及编译器的安装目录。安装程序会自动检测用户的操作系统,并选择适当的版本。如果用户需要使用其他平台,可以在安装程序中选择安装其他版本的编译器。 一旦安装完成,用户需要将MinGW-w64的路径添加到环境变量中,以便在命令行中使用编译器。如果使用IDE进行编译,用户可以在IDE设置中添加MinGW-w64的路径。 总之,mingw-w64-install.exe是将MinGW-w64编译器安装到Windows操作系统的便捷工具。它可以让开发人员更轻松地使用这个编译器,并为他们提供许多优秀的工具和功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值