gpt4 book ai didi

delphi - 在 Delphi 中如何找出哪个过程引发了异常?

转载 作者:行者123 更新时间:2023-12-03 14:37:59 27 4
gpt4 key购买 nike

我正在使用 Delphi TApplication.OnException 事件来捕获未处理的异常

这很有效,但没有提供有关异常发生位置的足够信息即“灾难性失败”

如何找出哪个程序导致了错误发生?

procedure TFrmMain.FormCreate(Sender: TObject);
begin
Application.OnException := MyExceptionHandler;
end;

procedure TFrmMain.MyExceptionHandler(Sender : TObject; E : Exception );
begin
LogException (E.Message);
Application.ShowException( E );
end;

最佳答案

您可以使用ExceptAddr变量(系统单元)获取抛出异常的内存地址。但如果您想要堆栈跟踪,您可以使用 3rdParty 工具 MadExcept、EurekaLog 或开源 JCLDebug(JCL 的一部分)之一。

关于delphi - 在 Delphi 中如何找出哪个过程引发了异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/347365/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com