ASP关于错误信息的显示

王朝asp·作者佚名  2006-11-24
宽屏版  字体: |||超大  

asp程序出错后,错误提示不是很清楚明白,让人摸不着头脑,用下面方法看看有没有帮助(此法目前只适合处ADO错误外的错误)

步骤一,用编辑器打开c:winnthelpiisHelpcommon500-100.asp

将它另存为500-101.asp备份(以便日后恢复)

步骤二,将下面的代码覆盖500-100.asp原文件,保存退出

步骤三,创建新文件test.asp,添加如下代码

<% response.write now(1)%>,存盘退出

步骤四,在浏览器中输入localhost/test.asp查看结果

500-100.asp的新代码:

<%@ language="VBScript" %>

<%

Option Explicit

Const lngMaxFormBytes = 200

Dim objASPError, blnErrorWritten, strServername, strServerIP, strRemoteIP

Dim strMethod, lngPos, datNow, strQueryString, strURL

If Response.Buffer Then

Response.Clear

Response.Status = "500 Internal Server Error"

Response.ContentType = "text/html"

Response.Expires = 0

End If

Set objASPError = Server.GetLastError

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

<html dir=ltr>

<head>

<style>

a:link {font:9pt 宋体; color:FF0000}

a:visited {font:9pt 宋体; color:#4e4e4e}

</style>

<META NAME="ROBOTS" CONTENT="NOINDEX">

<title>本页出错</title>

<META HTTP-EQUIV="Content-Type" Content="text-html; charset=gb2312">

<META NAME="MS.LOCALE" CONTENT="ZH-CN">

</head>

<script>

function Homepage(){

<!--

// in real bits, urls get returned to our script like this:

// res://shdocvw.dll/http_404.htm#http://www.DocURL.com/bar.htm

//For testing use DocURL = "res://shdocvw.dll/http_404.htm#https://www.microsoft.com/bar.htm"

DocURL=document.URL;

//this is where the http or https will be, as found by searching for :// but skipping the res://

protocolIndex=DocURL.indexOf("://",4);

//this finds the ending slash for the domain server

serverIndex=DocURL.indexOf("/",protocolIndex + 3);

//for the href, we need a valid URL to the domain. We search for the # symbol to find the begining

//of the true URL, and add 1 to skip it - this is the BeginURL value. We use serverIndex as the end marker.

//urlresult=DocURL.substring(protocolIndex - 4,serverIndex);

BeginURL=DocURL.indexOf("#",1) + 1;

urlresult=DocURL.substring(BeginURL,serverIndex);

//for display, we need to skip after http://, and go to the next slash

displayresult=DocURL.substring(protocolIndex + 3 ,serverIndex);

document.write( '<A HREF="' + escape(urlresult) + '">' + displayresult + "</a>");

}

//-->

</script>

<body bgcolor="FFFFFF">

<ul>

<li>错误类型:<br>

<%

Dim bakCodepage

bakCodepage = Session.Codepage

Session.Codepage = 936

Response.Write Server.HTMLEncode(objASPError.Category)

If objASPError.ASPCode > "" Then Response.Write Server.HTMLEncode(", " & objASPError.ASPCode)

Response.Write Server.HTMLEncode(" (0x" & Hex(objASPError.Number) & ")" ) & "<br>"

If objASPError.ASPDescription > "" Then Response.Write Server.HTMLEncode(objASPError.ASPDescription) & "<br>"

%>

</li>

<p>

<li>错误位置:<br>

<%

blnErrorWritten = False

' Only show the Source if it is available and the request is from the same machine as IIS

If objASPError.Source > "" Then

strServername = LCase(Request.ServerVariables("SERVER_NAME"))

strServerIP = Request.ServerVariables("LOCAL_ADDR")

strRemoteIP = Request.ServerVariables("REMOTE_ADDR")

If (strServername = "localhost" Or strServerIP = strRemoteIP) And objASPError.File <> "?" Then

Response.Write Server.HTMLEncode(objASPError.File)

If objASPError.Line > 0 Then Response.Write ", 第 " & objASPError.Line & " 行"

If objASPError.Column > 0 Then Response.Write ", 第 " & objASPError.Column & " 列"

Response.Write "<br>"

Response.Write "<font style=""COLOR:000000; FONT: 9pt 宋体""><b>"

Response.Write Server.HTMLEncode(objASPError.Source) & "<br>"

If objASPError.Column > 0 Then Response.Write String((objASPError.Column - 1), "-") & "^<br>"

Response.Write "</b></font>"

blnErrorWritten = True

End If

End If

If Not blnErrorWritten And objASPError.File <> "?" Then

Response.Write "<b>"

Response.Write Server.HTMLEncode(objASPError.File)

If objASPError.Line > 0 Then Response.Write Server.HTMLEncode(", 第 " & objASPError.Line & " 行")

If objASPError.Column > 0 Then Response.Write ", 第 " & objASPError.Column & " 列"

Response.Write "</b><br>"

End If

%>

</li>

<p>

<li>错误描述:<br>

<%

response.write Server.HTMLEncode(objASPError.description)

%>

</li>

<p>

</body>

</html>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有