每次第一次运行出现 错误,刷新一下页面就OK了,怎么回事??
源代码:
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<title></title>
</head>
<body>
<script language="VBScript" runat="server">
Sub Application_OnStart
Set fs = Server.CreateObject("Scripting.FileSystemObject")
counter_file = Server.MapPath("/counter.txt")
Set txt = fs.OpenTextFile( counter_file )
Application("counter") = txt.ReadLine
' 将FileSystemObject对象及counter.txt的实际路径
' 保存Application对象中
Set Application("fs") = fs
Application("counter_file") = counter_file
txt.Close
End Sub
Sub Application_OnEnd
' 将保存在 Application 对象中 FileSystemObject 对象
' 及counter.txt 的实际路径读出来
Set fs = Application("fs")
counter_file = Application("counter_file")
Set txt = fs.CreateTextFile( counter_file, True )
txt.WriteLine(Application("counter"))
txt.Close
End Sub
</script>
</body>
</html>
错误提示:
Microsoft VBScript 编译器错误 错误 '800a03f6'
缺少 'End'
/iisHelp/common/500-100.asp,行242
应用程序对象 错误 'ASP 0197 : 80004005'
不允许的对象使用
//global.asa,行21
不能添加 apartment 型的对象到应用程序的实质对象中。
每次第一次浏览时就会出现这些错误提示,但是刷新一下页面,第二次就能正常运行了。不知道是怎么回事???
问题点数:0、回复次数:14Top
1 楼lqflsh(不要让困难成为理由)回复于 2003-12-04 08:55:51 得分 0
有可能是数据缓存。Top
2 楼yeno(人在广州)回复于 2003-12-04 09:19:15 得分 0
这么奇怪的问题?闻所未闻Top
3 楼xieyj(如果有一天...)回复于 2003-12-04 09:23:34 得分 0
应该是global.asa文件中有问题,代码贴出来看看Top
4 楼vivisogood(新人类~~~~(Fuck 小日本~~))回复于 2003-12-04 09:26:26 得分 0
最前面加上看看
'**************** 禁止页面缓存 ******************
Response.Expires = 0
Response.Expiresabsolute = Now() - 1
Response.AddHeader "pragma","no-cache"
Response.AddHeader "cache-control","private"
Response.CacheControl = "no-cache"
'************************************************Top
5 楼bingofei(bingo)回复于 2003-12-04 09:28:51 得分 0
楼上的说的应该没错。试试看吧。缓存的问题。或者你在IE->工具->Internet选项->Internet临时文件->设置->每次访问此页时检查,应该也行。Top
6 楼ganq(小case,再烂的我都玩过~)回复于 2003-12-04 09:29:58 得分 0
缓存Top
7 楼monkeys(Myron.Liu)回复于 2003-12-04 10:18:12 得分 0
你禁止缓存试试看Top
8 楼rena2003tj(赵赵)回复于 2003-12-04 10:58:08 得分 0
禁止页面缓存
<%
Response.Buffer=True
Response.ExpiresAbsolute=Now()-1
Response.Expires=0
Response.CacheControl="no-cache"
%>Top
9 楼fchxx(萧萧)回复于 2003-12-04 11:11:51 得分 0
counter.txt是只读的吧!Top
10 楼alexzhang00(三角猫)回复于 2003-12-04 11:25:30 得分 0
问题不是上面各位说的,而是出在
Application_OnStart
Application_OnEnd
是默认在GLOBAL.ASA里执行的,对初始化和线程模式都有限制
楼主在普通页面里使用的时候
其实 GLOBAL.ASA 中的也会执行
这样就会出现 线程冲突,当刷新的时候,GLOBAL.ASA 已经执行完毕了,有就不会出现错误了
楼主的这种代码方法,是极力不推荐的Top
11 楼xxrl(孔曰成仁,孟曰取媳妇-->她太有才了)回复于 2003-12-04 11:38:59 得分 0
猫猫说的对Top
12 楼xxrl(孔曰成仁,孟曰取媳妇-->她太有才了)回复于 2003-12-04 11:40:33 得分 0
其实每一个文件夹底下都可以有一个global.asa文件,看楼主怎么用了
的确这种方法式不提倡的Top
13 楼aspczlover(你的骄傲...)回复于 2003-12-04 11:42:26 得分 0
GLOBAL.ASATop
14 楼hopefans(飞鱼)回复于 2003-12-05 17:11:34 得分 0
谢谢!Top




