Asp组件中级入门与精通系列之二

我们先来看看Application对象

以前使用Application对象常常用于计数器和数据库的连接串

我们以计数器为例:

先看global.asa文件,这个比较简单

<script language =vbscript runat=server>

sub Application_onstart

       Application("Counter")=0

end sub

 </script>

然后

打开vb6,新建Activex Dll工程。工程名修改为fCom,类名修改为fZ2
引用“Microsoft Active Server Pages Object”对象库。
创建两个组件事件:OnStartPage以及OnEndPage
在事件OnStartPage中创建类ScriptingContent的一个引用。
实例化类ScriptingContent

代码如下:

Option Explicit

'对象的声明

Dim myResponse As Response

Dim myRequest As Request

Dim myApplication As Application

Dim myServer As Server

Dim mySession As Session

    '当组件被创建的时候会触发这个事件

Public Sub OnStartPage(myScriptingContent As ScriptingContext)

     '进行对象的实例化

     Set myResponse = myScriptingContent.Response

     Set myRequest = myScriptingContent.Request

    Set myServer = myScriptingContent.Server

     Set myApplication = myScriptingContent.Application

     Set mySession = myScriptingContent.Session

End Sub

    '当组件被销毁的时候触发这个事件

Public Sub OnEndPage()

     '销毁对象

     Set myResponse = Nothing

     Set myRequest = Nothing

     Set myServer = Nothing

     Set myApplication = Nothing

     Set mySession = Nothing

End Sub

可以看到,把以前asp中写的搬到了vb中,写法是一样的

Public Sub ShowCounter()

    Dim intcounter As Long

    myApplication.Lock

    intcounter = myApplication("counter")

    intcounter = intcounter + 1

    myApplication("counter") = intcounter

    myApplication.UnLock

    myResponse.Write CStr(intcounter)

End Sub

测试

打开visual interdev6.0,生成一个asp文件

<%@ Language=VBScript %>

<HTML>

<BODY>

<%

dim obj

set obj=server.CreateObject("fCom.fZ2")

obj.ShowCounter()

%>

</BODY>

</HTML>

配置好虚拟目录,需要将global.asa文件放到根目录下,ie中执行此asp文件,刷新页面,就可以看到一个不断变化的数字。

Application的用法就讲到这里。
posted @ 2008-03-28 13:55  Athrun  阅读(234)  评论(0编辑  收藏  举报