Capture y guarde el código de función para errores de ejecución de ASP. Los amigos que necesiten obtener errores de ejecución de código ASP pueden consultar el nombre del proceso: catch(str).
Cómo utilizar:
Copie el código de código de la siguiente manera:
en caso de error reanudar siguiente
'Su código, como la conexión a la base de datos
captura de llamada (mensaje rápido que se muestra al usuario)
Función: borre el mensaje de error de IIS, personalice el mensaje de error y devuélvalo al usuario, y guarde el mensaje de error en un archivo txt (por supuesto, también puede realizar ligeras modificaciones para redirigir a una página personalizada, etc.)
Código:
Copie el código de código de la siguiente manera:
<%
opción explícita
'Ejemplo 1--------------------------
'Debe usarse junto con el resumen de error a continuación, pero es mejor comentarlo antes de que se publique oficialmente la página web, para no ver los detalles del error durante la depuración.
en caso de error reanudar siguiente
'i no está definido y se producirá un error. Utilice catch para borrar el error y guardarlo en el Bloc de notas.
i
llamar a catch (no se puede acceder a la página)
'----------------------------------
'Ejemplo 2---------------------------
conexión de función()
'Debe usarse junto con en caso de error, reanudar a continuación
en caso de error reanudar siguiente
'.........tu código para conectarte a la base de datos
captura de llamada (error al abrir la base de datos)
función final
'----------------------------------
captura secundaria (cadena)
si número de error <> 0 entonces
tmp tenue, camino
'La ruta absoluta del registro de errores, como /error_log.txt
ruta = /table/error_log.txt
tmp = tmp y página de error: & geturl & vbcrlf
tmp = tmp y hora de error: & now() & vbcrlf
tmp = tmp & IP visitante: & ip & vbcrlf
tmp = tmp y mensaje rápido: & str & vbcrlf
tmp = tmp y código de error: & número.err & vbcrlf
tmp = tmp y mensaje de error: & err.description & vbcrlf
tmp = tmp y aplicación: & err.source & vbcrlf & vbcrlf & vbcrlf
tmp = tmp & file_read(ruta)
llamar a file_save(tmp,ruta,1)
err.clear()
morir (cadena)
terminar si
sub final
'Las siguientes son las funciones utilizadas por catch--------------------
subeco(cadena)
respuesta.escribir(cadena)
sub final
subdie(cadena)
echo(cadena): respuesta.end()
sub final
funciónip()
ip = solicitud.variablesdelservidor(dirección_remota)
función final
'Obtener la URL actual
función geturl()
tmp tenue
si lcase(request.servervariables(https)) = desactivado entonces
tmp=http://
demás
tmp=https://
terminar si
tmp = tmp & request.servervariables(nombre_servidor)
si request.servervariables(server_port) <> 80 entonces
tmp = tmp &: & request.servervariables(server_port)
terminar si
tmp = tmp & request.servervariables(url)
si trim(request.querystring) <> entonces
tmp = tmp &? & recortar(solicitud.queryString)
terminar si
geturl = tmp
función final
'Función: leer el contenido del archivo en una cadena
función file_read(ruta)
tenue tmp: tmp = falso
si no file_exists (ruta), entonces file_read = tmp: función de salida
flujo tenue: establecer flujo = server.CreateObject (ADODB.Stream)
con corriente
.type = 2 'Tipo de texto
.mode = 3 'Modo de lectura y escritura
.conjunto de caracteres = gb2312
.abierto
.loadfromfile(servidor.MapPath(ruta))
tmp = .readtext()
terminar con
stream.close: establecer flujo = nada
archivo_read = tmp
función final
'Función: guardar cadena en archivo
función file_save(cadena,ruta,modelo)
si modelo<>0 y modelo<>1 entonces modelo=1
si modelo = 0 y file_exists (ruta), entonces file_save = true: función de salida
flujo tenue: establecer flujo = server.CreateObject (ADODB.Stream)
con corriente
.type = 2 'Tipo de texto
.conjunto de caracteres = gb2312
.abierto
.writetext cadena
.savetofile(servidor.MapPath(ruta)),modelo+1
terminar con
stream.close: establecer flujo = nada
file_save = file_exists (ruta)
función final
'Función: detectar si el archivo/carpeta existe
función file_exists (ruta)
tenue tmp: tmp = falso
dim fso: establecer fso = server.CreateObject(Scripting.FilesyStemObject)
si fso.fileexists(server.MapPath(ruta)) entonces tmp = true
si fso.folderexists(server.MapPath(ruta)) entonces tmp = true
establecer fso = nada
archivo_existe = tmp
función final
%>