Delphi 2009中的Exception类获得了许多新功能。其中一些与获取堆栈跟踪有关:
有没有人用这些来获取堆栈跟踪呢?是的,我知道有其他方法可以获得堆栈跟踪,但如果它在Exception类中本身支持,我宁愿利用它。
更新:有兴趣blog post about this。涵盖了很多深度。
答案 0 :(得分:8)
对我而言,这看起来像一个框架,您可以插入自己的堆栈跟踪。我想这可能会在IDE内部使用JCLDebug。也许它的目的是让用户能够提供madExcept或其他实现。
答案 1 :(得分:2)
不,我还没有使用它们(目前正在使用madExcept,并且还使用JclDebug进行了一些实验) - 但感谢提示!
答案 2 :(得分:2)
TOndrej是对的。添加到Exception类的新功能是为第三方将自己的堆栈跟踪代码挂钩到RTL中。 Exception类的默认实现不会产生自己的堆栈跟踪。
答案 3 :(得分:2)
建议你看看MadExcept。它不仅提供了对任何未处理的异常(屏幕抓取,电子邮件等)的出色处理,而且它有一组很好的可调用例程,可以将您回溯到几乎可以在任何地方使用的堆栈跟踪。 BRI