我是一名新程序员,并试图了解 Delphi 的Application.OnException事件是如何工作的。一位同事通过创建自己的方法并将其实例化并将其传递给单元Application.OnException的initialization部分来修改默认异常处理。该单元在uses另一个单元的子句中声明,否则未使用。
unit ADLDebug;
...
class procedure TADLExceptionHandler.ADLHandleException (Sender: TObject; E: Exception);
...
initialization
Handler := TADLExceptionHandler.Create;
Application.OnException := Handler.ADLHandleException;
我只能initialization使用调试器进入该部分,而不能进入该ADLHandleException方法。我试图在代码中导致将被重新定义的HandleException方法捕获的异常。
重新定义的方法的范围是否应该HandleException仅在包含的单元中ADLDebug?我在想它应该是应用程序范围的,但我似乎无法调用它。