FoxBASE+错误捕获程序
#3 **错误捕获及处理程序**ERR.PRG**
CLEAR
?'程序'+SYS(16,1)+'中出现错误!'
?'出错语句'+STR(error(),4)
?'错误信息:+MESSAGE()
a=SYS(16,1)
*将错误语句所在程序名赋给a
YN=' '
@5,0 SAY '修改(M) 跳过(J) 退出(Q) 请选择!'
@5,30 GET YN VALID YN $ "MJQ" PICT '!'
READ
DO CASE
CASE YN='M'
MODI COMM &a
RETURN
*选择'M',则返回原程序进行修改,修改完后存盘,系统自动从原错误处开始继续运行程序
CASE YN='Y'
RETURN
*选择'J',则忽略错误,继续向下执行程序
CASE YN='Q'
QUIT
*选择'Q',则关闭所有文件,并退出系统
ENDCASE
RETURN
使用该程序,只需将该程序拷到需调试程序所在的目录下,然后在需调试程序首部加上命令语句ON ERROR DO ERR就可以了
#3 调用举例
**EXP.PRG**
ON ERROR DO ERR
?A
?B
?C
ON ERROR
RETURN