程序调试与错误处理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
& """" MsgBox Msg Resume Next End Sub
第9章 程序调试与错误处理
9.2.4错误处理程序
应用程序运行过程中,出现错误是不可 避免的,硬件出现的问题或用户的误操 作,都会造成运行出错,这些错误可能 使程序意外的终止,一般无法使应用程 序继续运行。有些错误也许不会中断程 序运行,但可能使代码产生意想不到的 结果。因此必须用On Error语句捕获错 误并执行错误处理程序,以避免应用程 序不必要的意外中断。在程序设计中, 通过设置错误对象Err的各种属性,如错 误号、描述等,使应用程序在错误发生 时可以对错误状况作出响应或处理
End If … Exit Sub ErrLine
… End Sub
第9章 程序调试与错误处理
9.2.2 Resume 语句
语句格式:该语句有3种格式。 格式1:Resume 格式2:Resume Next 格式3:Resume <行号>
第9章 程序调试与错误处理
9.2.2 Resume 语句
第9章 程序调试与错误处理
9.1.2段点设置与立即窗口
1.Visual Basic的模式 2.中断与程序调试 3.监视与监视表达式 4.立即窗口
返回
第9章 程序调试与错误处理
1.Visual Basic的模式
Visual Basic的运行有三种模式: 设计模式、运行模式(Run)和 中段模式(Break)。
格式3指明发生运行错误时程序 跳过错误继续执行,即发生错误 时,不对错误做任何处理,直接 跳到产生错误语句的下一个语句 继续执行。若希望在程序出错时 进行错误处理,必须用格式1重 新设置其他错误处理,或用格式
第9章 程序调试与错误处理
2 取消该错误捕捉功能
Private Sub Form_Load() On Error Goto ErrLine … If n=100 On Error Resume Next
第9章 程序调试与错误处理
1.设置错误陷阱语句
Visual Basic用On Error语句捕捉程序运行时的 错误,以便设置错误陷阱,并利用Err对象及 相关的属性、方法确定程序运行时的错误起因, 以选择响应的解决措施,实现在线错误处理。
语句格式:On Error语句有3种基本格式。 格式1:On Error <行号> 格式2:On Error 0 格式3:On Error Resume Next 功能:设置或取消错误捕捉功能。
第9章 程序调试与错误处理
1.设置错误陷阱语句
说明:
在程序中,用On Error语句语 句设置的错误捕捉功能一直起作 用,直到另一个On Error语句取 消所设置的错误捕捉功能。在错 误捕捉处理程序起作用期间,一 旦发生错误,程序即转向指定的 行标号并执行错误处理程序。
第9章 程序调试与错误处理
单击“确定”按钮,完成设置
第9章 程序调试与错误处理
4.立即窗口
程序进入中断模式后,将自动激活 立即窗口;也可以直接在系统菜单 栏上选择“试图→立即窗口”选项, 打开立即窗口。若中断时程序正在 执行某个过程,该过程的代码窗口 与立即窗口一起显示。在立即窗口 中,可以直接执行Visual Basic语句, 并且不影响代码窗口的程序代码。
第9章 程序调试与错误处理
利用断点只能粗略的判断错误发 生的位置。利用程序跟踪可以直 接看到程序的执行情况和执行顺 序,找到发生错误的位置。对于 逻辑错误,利用断点可以跟踪到 程序运行的去向。Visual Basic的 跟踪方式包括逐语句执行,逐过 程执行和跳出执行。
第9章 程序调试与错误处理
逐语句执行是每次只执行一个语 句,并根据输出结果判断执行的 语句是否正确。逐语句执行开始 后,程序进入执行模式,执行一 条语句切换到中断模式,并把下 一条语句作为待执行的语句。
到的错误分成3类,即编译错误、运行错误、
逻辑错误
2.调试工具栏
Visual Basic 6.0不能诊断或更正错误,
但能提供工具帮助用户分析程序是如何从过程
的一部分流向另一部分,分析变量和属性是如
何随着语句的执行而改变。有了调试工具,就
能深入到应用程序内部去观察,从而确定到底
发生了什么,以及会发生。
第9章 程序调试与错误处理
9.2 错误处理程序设计
9.2.1应用程序错误与调试 9.2.2 Resume 语句 9.2.3 Err对象和Erl函数 9.2.4错误处理程序
第9章 程序调试与错误处理
9.2.1应用程序错误与调试
1.设置错误陷阱语句 2.取消该错误捕捉功能
第9章 程序调试与错误处理
1.设置错误陷阱语句
格式1设置从指定行号开始的错 误处理程序。〈行号〉可以是任 意的行标号或行号,并要求与 On Error语句在同一过程内。
格式2取消已设置的错误捕捉程 序。在已设置错误捕捉处理程序 的情况下,执行该语句将已激活 的错误处理程序变成无效。
第9章 程序调试与错误处理
1.设置错误陷阱语句
1.设置错误陷阱语句
Visual Basic用On Error语句捕捉程序运 行时的错误,以便设置错误陷阱,并利 用Err对象及相关的属性、方法确定程序 运行时的错误起因,以选择响应的解决 措施,实现在线错误处理。
语句格式:On Error语句有3种基本格式。 格式1:On Error <行号> 格式2:On Error 0 格式3:On Error Resume Next
第9章 程序调试与错误处理
1.设置错误陷阱语句
格式1设置从指定行号开始的错误处理程序。 〈行号〉可以是任意的行标号或行号,并要求 与On Error语句在同一过程内。
格式2取消已设置的错误捕捉程序。在已设置 错误捕捉处理程序的情况下,执行该语句将已 激活的错误处理程序变成无效。
格式3指明发生运行错误时程序跳过错误继续 执行,即发生错误时,不对错误做任何处理, 直接跳到产生错误语句的下一个语句继续执行。 若希望在程序出错时进行错误处理,必须用格 式1重新设置其他错误处理,或用格式
Visual Basic自动对监视表达式 进行监视。应用程序进入中断模 式后,这些监视表达式出现在 “监视”窗口中,可在该处观察 其值。
第9章 程序调试与错误处理
3.监视与监视表达式
只要表达式的值改变或等于一个 特定的值,就可把应用程序设置 为中断模式直接观察。例如,循 环计数器达到一个特定值时,可 用一个监视表达式把应用程序设 置为中断模式,而不是一次一条 语句执行数十次乃至数百次循环。 当过程中的一个标志值改变时,
第9章源自文库程序调试与错误处理
9.2.3 Err对象和Erl函数
只有在发生错误时,Err对象和 Erl函数才返回有意义的值,通 常把它们放在错误处理程序中, 用来确定所发生的是什么错误, 以及采取什么操作纠正错误。
第9章 程序调试与错误处理 Private Sub Command_Click()
Dim Msg,NI,UsrErr On Error GoTo ErrHand NI=Chr(10) Msg=“请输入一个错误号查看相应错误信息” UsrErr=InputBox(Msg) Error UsrErr Exit Sub ErrHand: Msg=“错误号”& Err &“的信息是:”& NI & """" & Error(Err)
(4)程序运行时,按下Ctrl+Break键 进入中断模式
(5)程序运行时,在菜单栏上选择 “运行→中断”选项进入中断模式
(6)程序运行时,单击工具栏上的 “中断”按钮进入中断模式
第9章 程序调试与错误处理
设置断点的方法:在程序代码窗 口中,将光标移到希望中断的语 句上,在菜单上选择“调试---切 换段点”选项,光标所在语句设 置为断点。被设为断点的语句为 反向显示并在其前面显示一个原 点。
第9章 程序调试与错误处理
9.2.3 Err对象和Erl函数
出现错误时,Err返回错误的代 码,错误代码的取值范围为1~ 32676。
第9章 程序调试与错误处理
9.2.3 Err对象和Erl函数
Err函数返回错误语句的行号。 若发生错误的程序没有行号,则 Err函数总是返回0。虽然Visual Basic中也可以使用行号,但行 号只是某一行的标识,但与旧版 本Basic语言兼容,与程序的执 行顺序无关。
第9章 程序调试与错误处理
1.设置错误陷阱语句
功能:设置或取消错误捕捉功能。 说明: 在程序中,用On Error语句语句设
置的错误捕捉功能一直起作用,直 到另一个On Error语句取消所设置 的错误捕捉功能。在错误捕捉处理 程序起作用期间,一旦发生错误, 程序即转向指定的行标号并执行错 误处理程序。
第9章 程序调试与错误处理
3.监视与监视表达式
在设计或中断模式下,可添加监 视表达式。方法:在菜单栏上选 择“调试→添加监视”选项,弹 出“添加监视”对话框,在该对 话框中添加监视表达式
第9章 程序调试与错误处理
添加监视表达式的步骤
若有必要,设置要监视的变量的范 围。如果在“上下文”中选定“过 程”或“添加模块”选项,则从相 应的列表框中选定一个过程、窗体 或模块名
若有必要,在“监视类型”组中选 定选项按钮,以确定对监视表达式 的响应方式
单击“确定”按钮,完成设置
第9章 程序调试与错误处理
添加监视表达式的步骤
若有必要,设置要监视的变量的范 围。如果在“上下文”中选定“过 程”或“添加模块”选项,则从相 应的列表框中选定一个过程、窗体 或模块名
若有必要,在“监视类型”组中选 定选项按钮,以确定对监视表达式 的响应方式
第9章 程序调试与错误处理
逐过程执行与逐语句执行基本相 同。逐过程执行不跟踪到过程中, 即把被调用的过程当作一条语句 一次执行完毕。“跳出”可以执 行当前过程的饿其他部分,并在 调用过程的下一行中断执行。
若想暂时避开程序的某一部分, 可以通过跳出执行来实现。
第9章 程序调试与错误处理
3.监视与监视表达式
启动Visual Basic后进入设计模 式,主窗口标题栏有“[设计]”二 字。建立应用程序的所有步骤基 本上都在设计模式下完成
第9章 程序调试与错误处理
1.Visual Basic的模式
执行“启动”命令后进入执行模 式,Visual Basic的主窗口标题栏 上的“[设计]”变成了“[运行]”。 在运行模式下,Visual Basic把全 部控制权都交给应用程序,可以 查看程序代码,但不能修改程序 代码,还可以执行“结束”命令 回到设计模式
第9章 程序调试与错误处理
1.Visual Basic的模式
中断模式是程序执行过程的一个 暂停状态,进入中断模式后主窗 口标题栏上的“[运行]”变成了 “[break]”.在中断模式下,可以 检查、修改程序代码,也可以检 查程序中变量的中间值,还可以 继续执行
第9章 程序调试与错误处理
2.中断与程序调试
第9章 程序调试与错误处理
第9章 程序调试与错误处理
9.1 程序调试 9.2 错误处理程序设计 9.3 错误处理实例
第9章 程序调试与错误处理
9.1 程序调试
9.1.1应用程序错误与调试 9.1.2段点设置与立即窗口
第9章 程序调试与错误处理
9.1.1应用程序错误与调试
1.应用程序的错误
为了更有效的使用调试手段,把可能遇
功能:该语句放在错误处理程序 中,指定执行错误处理程序后继 续执行的语句,以便在指定位置 恢复程序的执行。
说明:该语句与Return语句类 似,但只能用于错误处理程序中, 即必须与On Error语句配套使 用。
第9章 程序调试与错误处理
9.2.3 Err对象和Erl函数
Err对象含有关于运行出错时的 错误信息,其属性由错误的生成 者设置。该错误生成着可能是 Visual Basic系统,也可能是某对 象,或者是程序设计者。Err对 象的默认属性是Numeber。该默 认属性可以直接用对象名称Err 表示,所以不必修改以前Err函
Visual Basic提供段点和Stop语 句,把应用程序置于中断模式下
可以使用以下方法进入中断模式 (1)在程序中使用Stop语句,程
序运行到Stop语句进入中断模式 (2)在设计或中断模式下设置程
序的断点
第9章 程序调试与错误处理
2.中断与程序调试
(3)程序运行时出现错误,自动进入 中断模式
相关文档
最新文档