Win64 例外スタック ウォーキングが entry を表示しないという明確な理解から、API 呼び出しRtlAddFunctionTableおよびRtlInstallFunctionTableCallbackによる実行時の追加を含め、Win64 例外テーブルからすべてのエントリを取得できるようにしたいと考えています。
これは Delphi から可能ですか?
Win64 例外スタック ウォーキングが entry を表示しないという明確な理解から、API 呼び出しRtlAddFunctionTableおよびRtlInstallFunctionTableCallbackによる実行時の追加を含め、Win64 例外テーブルからすべてのエントリを取得できるようにしたいと考えています。
これは Delphi から可能ですか?
から:
RtlVirtualUnwind(UNW_FLAG_NHANDLER,
LImageBase,
LContext.Rip,
LRuntimeFunction,
LContext,
HandlerData,
EstablisherFrame,
NvContext);
HandlerData
ポインタには、例外テーブルに関するコンパイラ/言語固有の情報が含まれています。の一部の詳細System.pas
、特にメソッド_DelphiExceptionHandler
とを逆にするとFindOnExceptionDescEntry
、各エントリが何のためにあるのかを理解することができます。詳細は のTExcScope
レコード定義に反していSystem.pas
ます。