加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – madExcept,获得当前堆栈的顶部

发布时间:2020-12-15 09:27:41 所属栏目:大数据 来源:网络整理
导读:在delphi 2007应用程序中,我们使用madExcept来处理我们的exeptions.我们使用标准对话框,让用户根据需要向我们发送包含邮件的报告. 我们想为此功能添加一些内容.如果用户选择不发送完整报告,我们仍希望将异常记录到文件中,而不是完整报告.我们想要异常类和消
在delphi 2007应用程序中,我们使用madExcept来处理我们的exeptions.我们使用标准对话框,让用户根据需要向我们发送包含邮件的报告.

我们想为此功能添加一些内容.如果用户选择不发送完整报告,我们仍希望将异常记录到文件中,而不是完整报告.我们想要异常类和消息,以及源文件和行号.

前两个很容易,但我找不到找到后者的直接方法.

我有一个IMEException接口形式的完整异常报告.据我所知,调用堆栈只能通过BugReportSections属性获得,该属性以纯文本形式提供堆栈.

在madStackTrace.pas中,有一个StackTrace()函数可以给我我想要的东西.它需要很多参数,文档信息有点短.

题:
有没有人知道要输入StackTrace()的正确参数,以便它只从抛出异常的线程返回堆栈的顶部项?

解决方法

madStackTrace.pas还有另一个函数StackAddrToStr,只需要一个地址并返回格式化的文本.如果您在崩溃线程的except块中,则可以将全局ExceptAddr变量传递给它.如果你在其中一个madExcept回调函数中使用`IMEException.ExceptAddr’.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读