zoukankan      html  css  js  c++  java
  • ASP 错误处理

    <% Option Explicit
    
    '-------------
    '错误处理:
    '-------------
    '1.需在每一行可能发生错误的代码上使用"On Error" 和 "If Err.Number <> 0 Then ..." 结构。 注意作用域!
    '2.On Error语句: 启用或禁用错误处理程序
    '  * On Error GoTo 0:     禁用错误处理。
    '  * On Error Resume Next:开启错误处理。 
    '                          若未使用On Error Resume Next语句,所发生的运行时错误将显示错误信息,同时,代码的执行也随之终止。 
    '                          但当你采用它时,就会使程序不顾运行时错误,跳过产生错误的语句继续执行。之后可以在过程内部建立错误处理例程。
    '                          若调用其他过程时,On Error Resume Next语句变为非活动的,应在每个调用的例程中执行On Error Resume Next 语句。
    
    sub Err1()
        dim i
        On Error Resume Next
        i=99/0
        If Err.number<>0 then
            response.Write ("出错了")
            response.End()     '如果不写的话,会继续执行下面程序。
        End if
        
        response.Write ("错误已跳过")
    end sub
    
    sub Err2()
        On Error Resume Next
        response.Write (var1)
        response.Write (111)
    
        On Error GoTo 0
        response.Write (var2)
        response.Write (222)
    end sub
    
    sub Err3()             '//用err.raise自定义错误信息
        On Error Resume Next
    
        Dim Conn
        Set Conn = Server.CreateObject("ADODB.Connection")
    
        '这个DSN实际上不存在,所以返回错误信息
        Conn.Open "foo"
    
       If Err.Number <> 0 then
         Err.Clear
         'Err.Raise可以凭空产生错误
         Err.Raise vbObjectError + 7, "ErrTest.asp", "Connection Open Method Failed"
         response.Write ("已使用Err.Raise"&"</br>")
       End If
       If err.Number <> 0 then    
         Response.Write("Error On line    -> " & Err.Number - vbObjectError)
         Response.write("<BR>Error Source -> " & Err.Source)
         Response.Write("<BR>Error Desc   -> " & Err.Description)
         Err.Clear
       End If
    end sub
    
    'call Err1()  
    '//运行结果: 出错了
    
    'call Err2()
    '//运行结果:
    '111
    'Microsoft VBScript 运行时错误 错误 '800a01f4' 变量未定义: 'var2'
    
    call Err3()
    '//运行结果:
    '已使用Err.Raise
    'Error On line -> 7
    'Error Source -> ErrTest.asp
    'Error Desc -> Connection Open Method Failed
    
     %>
    
  • 相关阅读:
    GLSL 变量属性
    php读取大文件的方法
    php 3种常见设计模式
    php类自动装载、链式操作、魔术方法
    统计文件中关键词出现的次数
    python先序、中序、后序排序
    Nginx缓存、压缩配置
    Ninx虚拟主机的配置
    python爬虫代码
    Nginx在安装过程经常出现的问题
  • 原文地址:https://www.cnblogs.com/streetpasser/p/2975126.html
Copyright © 2011-2022 走看看