难题---------如何能彻底清除当前的异常呢? 我的某个窗体中,运行时由于某种原因,触发了异常,用户在操作时,就会不断的提示错误信息,无法再继续,且不说异常是如何产生的,我只想能有个办法能人为的清理这种异常,恢复到正常状态。例如:用户按一下“刷新”按钮,就能清除当前的异常状态,所有错误提示不再出现,恢复到刚进入窗体时的状态。能有办法实现吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你这不叫清除异常,这叫忽略异常,不做处理甚至不提示异常,当然得后果自负。try catch 补货异常后,不写任何代码即可忽略异常,但并不是所有异常都能捕获到 不知道异常如何发生的又如何能处理,应该找出异常的原因并避免异常的发生,而不是回避它。推荐你用EurekaLog来跟踪异常,EurekaLog包治百病,现在就下载,前1000位患者可获3折优惠,还等什么 啥叫退出这个异常嘛,你看到异常提示窗的时就表示已经发生了异常,只不过告诉你一下而已。如果你是想不弹出异常提示窗,就在seh里下手http://blog.csdn.net/hero_yin/article/details/2294691 用SetUnhandledExceptionFilter函数吧 sololie:你提供的资料不错,我学习一下。想问一下:它是发生 异常时中止应用是吧,我是想退出当前错误,保留在当时模块里就行了。 m617105:不用继续往下执行,只要能重新打开这个模块就行了。可是,资料中的代码是halt啊,直接把应用给杀掉了呀。 3方控件? 带界面的还是不带界面的?如果是主动调用错误,可以调用时用try包括来忽略,如try oFileSystemObject.CreateDirectory(...);exceptend;如果错误发生在非主动调用时(带界面的控件),那就有从消息处理着手,拦截该对象的消息处理过程,然后在try中调用原来的消息处理过程,如果还是不行,问题就有点棘手。正如Miami_Dexter所说,有些异常发生时,堆栈已经变得不安全,即时屏蔽了,很可能导致其他地方不稳定,尤其是一些堆栈溢出导致的异常。 在界面创建时加入Application.OnException:=MyException;应就可以抛弃相关异常 ■■ 一个困扰了我好久的问题? 用了这么长时间的IDE, 还是不知道怎么换行? 怎么才能把从数据库中取出的数据放入listview中显示呢? 谁愿意给俺介绍一个典型的MIDAS框架? 高手请进!有关panel中取动态创建的控件! 关于线程的疑惑? 高分赠送=====几条数据库小问题 数值字段可以进行加减计算,如果用除法就出错了,请教!! ODBC中的数据库驱动如何删除? delphi控件与sql server 不匹配问题: 求找出最大间隔的算法 cad二次开发在delphi里的数组结构的问题
try catch 补货异常后,不写任何代码即可忽略异常,但并不是所有异常都能捕获到
推荐你用EurekaLog来跟踪异常,EurekaLog包治百病,现在就下载,前1000位患者可获3折优惠,还等什么
如果你是想不弹出异常提示窗,就在seh里下手
http://blog.csdn.net/hero_yin/article/details/2294691
如果是主动调用错误,可以调用时用try包括来忽略,如
try
oFileSystemObject.CreateDirectory(...);
except
end;
如果错误发生在非主动调用时(带界面的控件),那就有从消息处理着手,拦截该对象的消息处理过程,然后在try中调用原来的消息处理过程,
如果还是不行,问题就有点棘手。正如Miami_Dexter所说,有些异常发生时,堆栈已经变得不安全,即时屏蔽了,很可能导致其他地方不稳定,尤其是一些堆栈溢出导致的异常。