MadExcept异常过滤器

opc*_*0de 3 delphi error-handling madexcept

我正在使用Delphi XE2和Mad Except我有一个应用程序巫婆使用Indy进行一些互联网操作...问题是,当一个简单的异常被提出时,就像没有互联网连接makexcept弹出.我想禁用这些来自indy的例外.

我有以下异常类:EIdSocketError消息:套接字错误#11004

我在疯狂的情况下进入了异常过滤器对话框,并将EIdSocketError放在异常过滤器上,但它不起作用我做错了什么?

在此输入图像描述

Rem*_*eau 9

引发的类的名称是,EIdSocketError但您将过滤器设置为EIDSocketError.也许MadExcept区分大小写?另请注意,所有Indy异常最终都是从中派生出来的,EIdException因此您可能希望对其进行过滤.

在任何情况下,MadExcept只捕获未捕获的异常,因此try/except在代码中使用块是正确的解决方案.这就是Indy的设计使用方式.如果在DFM流式传输期间在运行时实例化组件时遇到异常,则必须在设计时将组件保持在活动状态.不要那样做.确保在设计时停用组件,然后在准备使用它们时在运行时在代码中激活它们.