<!--#include file="Dv_ClsMain7.1.asp" -->
<%
Set Dvbbs = New Cls_Forum
Response.Write(Dvbbs.CacheName)
%>但在Dvbbs8.1和8.2中却运行出错:
Microsoft VBScript 运行时错误 错误 '800a01a8'
缺少对象: 'Dvbbs'
/Dv_ClsMain8.1.asp,行 2013
查看Dv_ClsMain.asp,发现从8.1开始Cls_Forum类的代码有了些不同:
从8.1开始,将原先Class_Initialize函数中的内容放到了PageInit函数中,并在页面末尾增加了一句:Dvbbs.PageInit()!
也就是说,将原先实例化时自动初始化过程改为了人为初始化,这样类的实例化(Dvbbs的声明)就必须放在包含文件之上,否则Dvbbs.PageInit()一句将出错,上面出错正是由于这个原因,OK,将上边代码顺序做相应修改即可:
<%
Set Dvbbs = New Cls_Forum
%>
<!--#include file="Dv_ClsMain8.2.asp" -->
<%
Response.Write(Dvbbs.CacheName)
%>为什么要将自动初始化改为人为初始化?有点费解。
QQ上请教了老迷,老迷如是说:
(2008-06-12 11:32:08) 迷城浪子
容易导致崩溃。
(2008-06-12 13:45:22) 迷城浪子
因为是VBS类,那个自动执行的函数里执行的操作太多。
(2008-06-12 13:45:31) 迷城浪子
很容易导致脚本引擎异常。
评论(0)
暂无评论。