使用 Delphi 7,我怎样才能得到一个代表堆栈跟踪的字符串Exception
?
try
SomethingDodgy();
except
on E:Exception do begin
// print stack trace
Log.Write(/* ??? */);
end;
end;
我听说最新的 delphi 中有一个 GetStackTrace 函数,但我找不到任何适用于 delphi 7 的东西。不,升级不是一个选项:)
使用 Delphi 7,我怎样才能得到一个代表堆栈跟踪的字符串Exception
?
try
SomethingDodgy();
except
on E:Exception do begin
// print stack trace
Log.Write(/* ??? */);
end;
end;
我听说最新的 delphi 中有一个 GetStackTrace 函数,但我找不到任何适用于 delphi 7 的东西。不,升级不是一个选项:)
我把EurekaLog 扔进了游戏。这是一个很棒的工具,而且一点也不贵。
MemChk非常易于使用(尤其是搜索/查找内存泄漏),并且知道如何从代码地址呈现堆栈跟踪。
Win32 中的堆栈跟踪不如 .NET 或 Java 的(并且 Delphi 的最新版本使用 .NET 堆栈跟踪)。无论如何,我在这里
找到了一个提供更多信息的链接(它位于 ExeEx,以便查看该解决方案,单击搜索中的第一个链接)。
请参阅页面底部。