2

Win64 例外スタック ウォーキングが entry を表示しないという明確な理解から、API 呼び出しRtlAddFunctionTableおよびRtlInstallFunctionTableCallbackによる実行時の追加を含め、Win64 例外テーブルからすべてのエントリを取得できるようにしたいと考えています。

これは Delphi から可能ですか?

4

1 に答える 1

2

から:

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

HandlerDataポインタには、例外テーブルに関するコンパイラ/言語固有の情報が含まれています。の一部の詳細System.pas、特にメソッド_DelphiExceptionHandlerとを逆にするとFindOnExceptionDescEntry、各エントリが何のためにあるのかを理解することができます。詳細は のTExcScopeレコード定義に反していSystem.pasます。

于 2013-04-16T01:53:23.357 に答える