在delphi 2007应用程序中,我们使用madExcept来处理对我们的扩展。我们使用标准对话框,让用户发送邮件报告,如果他想。madExcept,获得当前堆栈顶部
我们希望为此功能添加一点。如果用户选择不发送完整报告,我们仍然希望将该例外记录到文件中,但不是完整的报告。我们需要异常类和消息,以及源文件和行号。
前两个很容易,但我找不到找到后者的简单方法。
我有一个IMEException
界面的完整例外报告。据我所知,调用堆栈只能通过BugReportSections
属性获得,它以纯文本形式提供给我。
在madStackTrace.pas中,有一个StackTrace()
-功能应该给我我想要的。这需要大量的参数,该文档是信息有点短..
问: 是否有人知道正确的参数送入StackTrace()
,所以它只能从返回堆栈的顶部项抛出异常的线程?
仍然返回一个字符串,但是这个引导我从madMapFile.pas中获取GetMapFileInfos(),这可能会给我我想要的。 – Vegar
我想我可能已经找到了我需要的StackTrace,但是:'StackTrace(true,false,false,@stack,exception.ExceptAddr,true,false);' – Vegar
@Vegar如果它正在工作,应该接受此答案 – mjn