已经引用了microsoft active server pages object library
并且可以在vb中使用asp内置对象,源程序如下:Option ExplicitDim mySession As Session
Dim myResponse As Response
Dim test As StringPublic Sub OnStartPage(myScriptingContent As ScriptingContext)
Set mySession = myScriptingContent.Session
Set myResponse = myScriptingContent.Response
End Sub
Private Sub Command1_Click()
mySession(test) = "这是测试程序"
myResponse.Write "这是测试程序"
End Sub
但是运行的时候,仍然报
Object variable or with block variable not set
错误,这是为什么呢?
并且可以在vb中使用asp内置对象,源程序如下:Option ExplicitDim mySession As Session
Dim myResponse As Response
Dim test As StringPublic Sub OnStartPage(myScriptingContent As ScriptingContext)
Set mySession = myScriptingContent.Session
Set myResponse = myScriptingContent.Response
End Sub
Private Sub Command1_Click()
mySession(test) = "这是测试程序"
myResponse.Write "这是测试程序"
End Sub
但是运行的时候,仍然报
Object variable or with block variable not set
错误,这是为什么呢?
解决方案 »
- 如何把文本框从四行开始删除第四行以下文本中的空格键和回车键
- 关于TOOLBAR中按钮的下拉菜单(复选框)问题!在线等,解决即结帐!
- 问一个问题:如何用代码控制动态添加从system.windows.form派生的控件到窗体?
- 我装的VB怎么不能使用MSHFLEXGRID控件
- 给俺推荐一个编程的QQ群
- 如何实现在DataGrid或者其他Grid控件中编辑\增删改记录信息
- sendkeys是发送一个按键信息,能不能让按键一直按在那儿呢?
- 怎么将一个数据库的表拷贝到另一个数据库中??
- 从一个Form1打开Form2时,如何传递参数。UP有分
- 勇士\高手,在哪?_______如何实现mschart的x轴和Y轴一样可以用数值自动递增,显示主网格线和细网格线。
- 怎么在.xls文件中查找,急啊!高手帮忙啊!
- 在簡體下開發的系統怎樣才能在繁體系統下運行,怎麼解決這個問題呢?
Session相比较就简单多了
看
打开vb6,新建Activex Dll工程。工程名修改为fCom,类名修改为fZ3
引用“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中,写法是一样的
‘得到所有的session的变量和值
Public Sub ShowSession()
'可以设置超时20分钟
mySession.Timeout = 20
Dim myitem
'得到所有的session
For Each myitem In mySession.Contents
myResponse.Write myitem & ": " & mySession.Contents(myitem)
myResponse.Write "<br>"
Next
End Sub测试
打开visual interdev6.0,生成一个asp文件
<%@ Language=VBScript %>
<HTML>
<BODY>
<%
dim obj
set obj=server.CreateObject("fcom.fz3")
session("name")="龙卷风"
session("age")=26
session("特长")="组件"
obj.ShowSession()
%></BODY>
</HTML>
配置好虚拟目录,在ie中执行此asp文件,可以看到
name: 龙卷风
age: 26
特长: 组件
Session的用法就讲到这里。Session其他的用法类似。
OnStartPage由ASP的加载服务代码ASP.DLL来调用。