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

我们学习来看一下Response对象。其实我们前面的教程中一直都在使用这个对象的Write方法。

这里我们用Response对象设置cookie。

?

打开vb6,新建Activex Dll工程。工程名修改为fCom,类名修改为fZ5
引用“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

?

'从页面中设置Cookie,组件中得到

Public Sub GetCookie()

??? Dim myitem

??? '全部信息

??? For Each myitem In myRequest.Cookies

??????? myResponse.Write myitem & ": " & myRequest.Cookies.Item(myitem)

??????? myResponse.Write "
"

??? Next

???

??? '单个信息

??? myResponse.Write "其中用户姓名是" & ": " & myRequest.Cookies("username")

??? myResponse.Write "
"

??? myResponse.Write "其中用户年龄是" & ": " & myRequest.Cookies("age")

??? myResponse.Write "
"

End Sub

'组件中设置cookie,页面中得到

Public Sub SetCookie()

??? myResponse.Cookies("com_username") = "龙卷风"

??? myResponse.Cookies("com_age") = 26

??? myResponse.Expires = #9/13/2004#

End Sub

?

编译成Dll文件,系统自动会注册。

否则就手工注册 Regsvr32 f:\test\fcom.dll

?

测试

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

?

配置好虚拟目录,在ie中执行fc5.asp文件,可以看到

龙卷风
26
age: 26
username: 龙卷风
com_age: 26
com_username: 龙卷风
其中用户姓名是: 龙卷风
其中用户年龄是: 26

未完待续

时间: 2024-10-19 06:47:49

Asp组件中级入门与精通系列之五的相关文章

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

开始数据库操作. 常见的组件封装 1.? 把数据库的连接信息封装起来. 1>???? 直接返回数据库连接串,如,组件中 Public? Function? datasource()? As? Variant datasource? =? "driver={sql? server};server=yang;uid=sa;pwd=;? database=northwind" End? Function ? asp调用 set obj=server.CreateObject("

Asp组件初级入门与精通系列之五

经常我们可以看到在连接数据库,打开记录集的时候,如下: rs.Open strsql, conn,adOpenDynamic ,adLockPessimistic 在键入","的时候,后面会出现一个游标类型或者锁类型列表可以供选择. 有时候我们为了简化,直接rs.open strsql,conn,1,3 第一种方法是不是更加专业一些,我们来看看asp中如何实现 打开vb6,新建Activex Dll工程.工程名修改为fCom,类名修改为fC5 Option Explicit '定义枚举

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

作为Asp的内置对象,我们最后来学习Server对象Server对象用的比较多的就是Html编码,Url编码和网页的重定向,传送.?打开vb6,新建Activex Dll工程.工程名修改为fCom,类名修改为fZ6 引用"Microsoft Active Server Pages Object"对象库.创建两个组件事件:OnStartPage以及OnEndPage 在事件OnStartPage中创建类ScriptingContent的一个引用.实例化类ScriptingContent.

Asp组件高级入门与精通系列之一

高级   很久没有写这个系列了,最近一直在忙其他的东西 高级的组件话题我们将讨论一些比较难实现的,复杂的东西 前段时间我写了一个龙卷风缩略图水印组件,感觉效果还不错,由于是vb写的,有一些难度,大家一起来看看 这里有帖子:http://community.csdn.net/Expert/topic/4115/4115767.xml?temp=.9513056 功能如下: 龙卷风缩略图水印组件1.0版功能特点:1.支持从bmp位图,jpeg,gif导入2.仅支持生成jpeg格式3.文字水印,支持自

Asp组件初级入门与精通系列之一

一直以来,想写一些组件方面的应用,这段时间终于可以写一点自己喜欢的东西. 希望大家通过这些教程学习后,可以随心所欲的写出自己的组件. 每篇文章可能没有关联,只是写一些组件编写过程中出现的问题. 欢迎大家批评指正 环境:winxp+vb6+sp6+visual interdev6.0 作为第一篇,我们先来写一个比较简单的组件 完成的功能是:输入两个数相加,返回相加的结果 打开vb6,新建Activex Dll工程.工程名修改为fCom,类名修改为fC1 点击菜单->工具->添加过程 我们在名称内

Asp组件初级入门与精通系列之三

如何使用属性 打开vb6,新建Activex Dll工程.工程名修改为fCom,类名修改为fC2 点击菜单->工具->添加过程 我们在名称内输入myName,类型选择属性,范围选择公有,然后确定 再次操作:在名称内输入Age,类型选择属性,范围选择公有,然后确定 再次操作:在名称内输入peopleInfo,类型选择函数,范围选择公有,然后确定即可 代码如下: Option Explicit '保持属性值的局部变量,只能在类中使用 Private mvarmyName As String Pri

Asp组件初级入门与精通系列之四

数组问题 数组在程序中使用的很多,而且比较容易出问题 我们通过小例子来看看 打开vb6,新建Activex Dll工程.工程名修改为fCom,类名修改为fC4 点击菜单->工具->添加过程 我们在名称内输入AcceptArray1,类型选择子程序,范围选择公有,然后确定 再次操作:在名称内输入AcceptArray2,类型选择函数,范围选择公有,然后确定即可 '功能:传递数组地址到组件,使用ByRef关键字,并赋值返回 Public Sub AcceptArray1(ByRef varray

Asp组件初级入门与精通系列之六

错误处理 如果页面出错,而没有对错误的处理,那么页面会显示一个用户可能看不懂的错误. 在asp脚本中可以使用 On Error Resume Next -- if Err.Number<>0 then Response.Write Err.Description End if 但是如果组件中出错呢?这种方法可以捕获错误,但是具体的错误如何知道呢? 我们可以在组件中加入错误处理,来返回错误,这样可以容易的看到更加详细的出错信息,有助于我们排除错误. 使用Err.Raise, Raise 被用来生

Asp组件初级入门与精通系列之七

在运行前几章的例子,可能或多或少的都会碰上一些问题 如:组件编译后,又要修改,发生"权限被拒绝,'f:\csdn\fcom.dll'"等等的错误. 当asp页面浏览时,打开任务管理器,会看到一个dllhost.exe,用户名为IWAM_YANG的进程.IWAM_YANG会根据计算机名而有所不同. 可以使用以下几种方式来解决 1. 重新启动iis. 在控制面板中找到管理工具->internet信息服务->右键点击左边树图第二层本地计算机->所有任务->重新启动II