我为我们的一个网站系统做了一个ASP组件,在本机测试正常,发布出去,有各别用户说一调用页面就会死掉,然后IIS就全死了,其它网站不能在使用。该组件中与IIS中有关系的就是获取当前的域名与当前网站的路径和对Session操作一次,代码如下,
Request.ServerVariables.Item[37];//返回域名
Request.ServerVariables.Item[4];//返回路径
//操作Session
if Session.Value[Web_SessionName+ 'AdminNames'] = '' then
REsult := OperErr
else
Result := StrToInt(Session.Value[Web_SessionName+ 'AdminLevels']);
其它的都是数据库的连接,如
function TLDOConn.OpenConn(const DBPath: WideString): Byte; //创建连接
const
DBSource = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=';
begin
try
DBConn := CreateOleObject('ADODB.Connection'); //DBConn是全局变量
DBConn.Open(DBSource + DBPath);
Result := OperSuc;
except
Result := OperErr;
end;
end;function TLDOConn.CloseConn: Byte; //关闭连接
begin
if VarIsNull(DBConn) then
begin
DBConn.Close;
end;
end;
还有就是用到了ADOTable这个组件,它用在一个方法里,用后就释放了
在我的这个程序中,没有用到如CoInitialize等方法,与它们有关系嘛?大家帮我分析一下,IIS死的可能性,死掉的系统是2000,多谢
Request.ServerVariables.Item[37];//返回域名
Request.ServerVariables.Item[4];//返回路径
//操作Session
if Session.Value[Web_SessionName+ 'AdminNames'] = '' then
REsult := OperErr
else
Result := StrToInt(Session.Value[Web_SessionName+ 'AdminLevels']);
其它的都是数据库的连接,如
function TLDOConn.OpenConn(const DBPath: WideString): Byte; //创建连接
const
DBSource = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=';
begin
try
DBConn := CreateOleObject('ADODB.Connection'); //DBConn是全局变量
DBConn.Open(DBSource + DBPath);
Result := OperSuc;
except
Result := OperErr;
end;
end;function TLDOConn.CloseConn: Byte; //关闭连接
begin
if VarIsNull(DBConn) then
begin
DBConn.Close;
end;
end;
还有就是用到了ADOTable这个组件,它用在一个方法里,用后就释放了
在我的这个程序中,没有用到如CoInitialize等方法,与它们有关系嘛?大家帮我分析一下,IIS死的可能性,死掉的系统是2000,多谢
这种错误我最怕怕了!!!!
大家还有什么想法,分好说