预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共20页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第十五章程序调试与出错处理1.编译错误 指由于违反了VB的有关语法而产生的错误(也称语法错误)。常见的编译错误有:(2)对象名称(Name属性)写错; (3)对象的属性名、方法名,内部函数名写错; (4)变量未定义或变量名写错(可在通用声明段加OptionExplicit,采用变量显式声明); (3)块If没有对应的EndIf语句;For循环没有对应的Next语句;Do循环没有对应的Loop语句等,这类错误当VB开始运行时提示出错信息,且将出错位置用反色显示,2运行错误 VB在运行代码时指令代码执行了一非法操作引起的误指。例如,除法时分母为零,被操作的驱动器未准备好或磁盘读写有错。或数组下标超界、数据溢出等。 运行出错也将弹出一个子窗口,提示出错信息。3逻辑错误 程序存在逻辑上的缺陷引起程序运行后,得不到所期望的结果。 例如,使用了不正确的变量类型或指令的次序不对。又如,循环中起终值不正确。逻辑错误也可以产生运行错误。通常,逻辑错误不会产生错误提示信息,需要程序员仔细地阅读分析程序。15.2VB6.0系统调试工具 15.2.2VB调试工具15.3调试和排错方法15.3.3程序调试窗口 有三个调试窗口,它们是:“立即”窗口、“监视”窗口、和“本地”窗口。可单击视图菜单中的对应命令打开这些窗口。(2)在中断模式下,可自动显示出所有在当前过程中的变量声明及变量值。(单击调试工具栏上的“本地窗口”按扭或选择“视图”菜单的“本地窗口”显示),如图15-8所示。(3)“监视”窗口显示当前的监视表达式,在代码运行过程中可决定是否监控这些表达式的值。15.4出错处理1.设置错误陷阱 使用OnError语句可设置陷阱,捕捉错误。OnError语句有如下形式: (1)OnErrorResumeNext 发生错误时,忽略错误行,继续执行下一语句。 (2)OnErrorGoTo语句标号 发生错误时,使程序转跳到语句标号所指示的程序块。 (3)OnErrorGoTo0 表示当发生错误时,不使用错误处理程序块。 2.编写错误处理程序 编写错误处理程序一般要使用到Err对象,它是一个系统对象,可以通过Err对象来获取错误的消息。当出现VB错误时,有关错误的信息存储在Err对象中。Err对象每次只维护一个错误的信息。当出现新的错误时,Err对象将更新为新的错误信息。 Err对象的缺省属性是Number属性。当运行时错误发生时,Err对象的属性被填入明确识别错误的信息以及处理这个错误所使用的信息。 当OnError捕捉到错误后,Err对象的属性Number指示对应错误号。在错误处理程序块中可使用“SelectCaseErr.Number”或“IfErr.Number=”语句编写出错处理。 例如,下面的Test过程是Number属性在错误处理过程中的典型用法。3.退出错误处理 在错误处理程序中,当遇到ExitSub、ExitFunction、EndSub、EndFunction等语句时,将退出错误捕获。 在错误处理程序结束后,要恢复原有的运行。可用Resume语句。 语法: (1)Resume'重新执行产生错误的语句 (2)ResumeNext 重新执行产生错误的语句的下一语句 (3)Resume语句标号'从语句标号初恢复执行 一般来说,一些可以修正的错误,可使用Resume,而在错误处理程序不能修正错误时使用ResumeNext或Resume语句标号。例15.2编写一个判断一个给定的文件是否存在的函数,并能处理无效驱动器或软盘驱动器没有磁盘等设备出错问题。 15.5生成执行文件和制作安装程序15.5.2使用安装向导创建安装程序