EurekaLog 公开了几个事件处理程序,例如OnExceptionNotify
.
您可以在代码中实现这些。例如:procedure EurekaLogExceptionNotify(
EurekaExceptionRecord: TEurekaExceptionRecord; var Handled: Boolean);
在这里您可以看到在TEurekaExceptionRecord
中定义的ExceptionLog.pas
。但是您可能只是拥有可以正常工作的非源版本。
该记录有一个EurekaExceptionRecord.CallStack
列表。该专有列表可以转换为TStrings
使用单元CallStackToStrings
中定义的方法ExceptionLog
。
这是我将 CallStack 写入 StringList 的示例。
CallStackList := TStringList.Create;
try
CallStackToStrings(EurekaExceptionRecord.CallStack, CallStackList);
LogMessage := 'An unhandled exception occured. Here is the CallStack.' + #13#10
+ CallStackList.Text;
finally
CallStackList.Free;
end;
至少从这个起点开始,您应该能够调查公开的功能、记录等。所有信息都可以访问。