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
    
     %>
    
  • 相关阅读:
    树莓派基于scratch2控制GPIO
    一次修复linux的efi引导的集中方法总结记录
    linux(deepin) 下隐藏firefox标题栏
    log4j 1.2 配置和使用简述
    在非gnome系桌面环境下运行deepin-wine tim的错误解决
    manjaro AwesomeWM 上使用双显示器
    linux 关闭主板上的蜂鸣器声音
    anki的使用以及anki server的配置
    阅读《人类简史》-- 1.认知革命
    java生成zip包兼容Linux
  • 原文地址:https://www.cnblogs.com/streetpasser/p/2975126.html
Copyright © 2011-2022 走看看