2

Win64 异常堆栈遍历不显示条目的一些更清晰的理解中,我希望能够从 Win64 异常表中检索所有条目 - 包括 API 调用RtlAddFunctionTableRtlInstallFunctionTableCallback的任何运行时添加。

这可能来自德尔福吗?

4

1 回答 1

2

从:

RtlVirtualUnwind(UNW_FLAG_NHANDLER,
                   LImageBase,
                   LContext.Rip,
                   LRuntimeFunction,
                   LContext,
                   HandlerData,
                   EstablisherFrame,
                   NvContext);

HandlerData指针包含有关异常表的编译器/语言特定信息。如果您颠倒一些细节System.pas,特别是方法_DelphiExceptionHandlerFindOnExceptionDescEntry,则可以找出每个条目的用途 - 细节与 中的TExcScope记录定义相反System.pas

于 2013-04-16T01:53:23.357 回答