On-Error-Resume-Next用法_第1页
On-Error-Resume-Next用法_第2页
On-Error-Resume-Next用法_第3页
On-Error-Resume-Next用法_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

该语句的作用是 启用或禁用错误处理程序 一般用法如下 OnOn ErrorError ResumeResume NextNext OnOn ErrorError GoTo 0 如果在您的代码中未使用 OnOn ErrorError ResumeResume NextNext 语句 所发生的运行时错误将显示错误信 息 同时 代码的执行也随之终止 但当你采用它时 就会使程序按照产生错误的语句之后的语句继续执行 或是按照最近一 次所调用的过程 该过程含有 OnOn ErrorError ResumeResume NextNext 语句 中的语句继续运行 这个语 句可以不顾运行时错误 继续执行程序 之后您可以在过程内部建立错误处理例程 在调用另一个过程时 OnOn ErrorError ResumeResume NextNext 语句变为非活动的 所以 如果希望在例程 中进行内部错误处理 则应在每一个调用的例程中执行 OnOn ErrorError ResumeResume NextNext 语句 如果您已启用 OnOn ErrorError ResumeResume NextNext 错误处理程序 则可使用 OnOn ErrorError GoTo 0 禁用错 误处理程序 On Error Resume Next Err Raise 6 产生溢出错误 msgbox Error CStr Err Number Err Description 缺少对象 因为 cnbruce 是自定义的 msgbox Error CStr Err Number Err Description E 对象不支持该属性或方法 msgbox Error CStr Err Number Err Description Err Clear 清除错误 附注 要在代码中生成运行时错误 请用 Err 对象的 Raise 方法 这样的情况经常在调试程序的时候看见 比如分别调试下面两程序则会显示 1 err1 asp 技术信息 用于支持人员 错误类型 Microsoft VBScript 运行时错误 0 x800A0006 溢出 2 err2 asp 调试的时候也就是 技术信息 用于支持人员 错误类型 Microsoft VBScript 运行时错误 0 x800A01A8 缺少对象 cnbruce 但当你在首行添加了 On Error Resume Next 之后 发现不报错提示 表明内部错误处理完 成 但进行下列程序的时候发现 3 err3 asp 这时运用了 OnOn ErrorError GoTo 0 则会显示出错信息 只不过不是第三行 而是第五行的 错误对象了 aspasp 中中 OnOn ErrorError ResumeResume NextNext 的详细用法的详细用法 OnOn ErrorError ResumeResume NextNext 的意思是如果发生错误就继续直接执行出错语句下面的那句 一般 的 如果出错 VB 会报告并停止运行 但有时错误并不严重 不会产生严重影响 你可以 在可能出错的语句前面加上这句 但是如果错误很严重 会影响到后续语句 就不要使用 这个方法了 当我们在程序最上面使用 On Error Resume Next 语句时 所有的错误都会被忽略 程序会自动执行下 一条语句 这样程序就会完全执行 出错后用户也不会看到出错信息 但是这样也有 不好的地方 那就 是如果程序没有按照你想像的执行的话 你就很难找到到底是哪里出了问题 所以你就得在必要的地方对 错误进行处理 处理错误 在 ASP 中 处理错误的最好的办法就是在程序最底端放上代码来处理错误 我也推荐在每个 ASP 程 序都使用缓冲区 这样的话 如果错误发生 页面就会停止 页面内容也会被清除 这样用户就不会看 到错误信息 对你们的抱怨也就少了 下面是一个例子 错误处理 If Err Number 0 Then 清除页面 Response Clear 显示错误信息给用户 An error occurred in the execution of this ASP page Please report the following information to the support desk Page Error Object 错误 Number 错误信息 出错文件 出错行 你们上面看到了 我首先设置 On Error Resume Next 这样出现错误就不会影响程序的执行 事关程序命运 OnOn ErrorError ResumeResume NextNext 问题 各位高手请教你们 我一个 ASP 投稿程序 数据库连接的代码是 但现在经常出现 ASP 跑死 不能打开 要过几分钟才能恢复 请问是不是和其中 OnOn ErrorError ResumeResume NextNext 有关系 不能终止错误 如果是 如何避免在运行错误时 可以自动终止 释放出一些资源 多谢各位 问题补充 问题补充 如果删除了这个 OnOn ErrorError ResumeResume NextNext 会不会有大的弊端 这个代码可否优化点 节省一些程序资源消耗 避免跑死 ASP 的情况 首先 OnOn ErrorError ResumeResume NextNext 不是避难用的 一般来讲在程序调试无误以后 加上这句话 用来防止意外 如果本身你的程序就有问题 这句话的作用就是让你逃避错误 其实删除这句话也没什么妨碍 这样的话 if err then err clear else conn open connstr end if 就要改成 conn open connstr 这样的话 Err 就会实时的显示出来 程序有错时执行的是 if err then err clear 这样只是把 ERR 的错误信息清空 而程序自然没什么反应的 if err then err clear response write 出错 response end else conn open connstr end if 你的错误处理太那个了 出错了忽略有什么用当然是把错误说出来 然后想办法 你光把错误 清除 可是你下面的代码还是要调用这个 CONN 但这个 CONN 的错误处理是 不管连没连上 都往下走 那么没连上的时候 下面不知道当然还是去用这个连接 自然跑死 解决因使用ON ERROR RESUME NEXT 导致被掩饰的错误 引起结果不正确的问题 程序首端添加了 On Error Resume Next 以更好地处理执行时引起的错误 但在数据库 访问中引出了麻烦 因为我在一个查询操作中出错了 从运行过程来看就是被掩盖的错误 导致的 请问如何解决这个难题 确实 因为使用了 On Error Resume Next 即使前一步的操作 象你的查询操作 出了错 以后操作仍会被继续执行 最终导致完全错误的结果 我们的解决办法就是先检查一下错 误再继续执行 具体代码见下 If Err Num

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论