1

我在尝试使用 eurekalog 部署应用程序以解决特定场景中发生的一些内存泄漏时遇到问题。当我将我的应用程序项目配置为在 delphi IDE 下使用 eurekalog 并通过 IDE 运行时,它可以完美运行,报告泄漏和异常。当我在 IDE 之外运行 exe 时,它​​不会报告任何内容。

使用 eurekalog 部署应用程序是否有特殊配置?

谢谢

4

3 回答 3

1

IDE 不会报告任何内容......应该有一个来自 EurekaLog 的窗口,提供调用堆栈和其他一些信息。来自EurekaLog 官方文档

简短的回答:

  1. 要解决非工作、部分或误导性调用堆栈的问题 - 清除项目的 .map、.tds 和 .dcu 文件并确保: ●(Delphi) 启用“编译器”/“调试信息”、“链接器”/ “地图文件”=“详细”。●(C++ Builder)启用“C++编译器”/“调试”/“调试信息”、“C++编译器”/“调试”/“调试行号信息”、“C++链接器”/“完整调试信息”、“C++链接器” "/"输出"/"映射文件" = "详细段映射"。

  2. 增加EurekaLog的帮助等级: ●(Delphi)启用“编译器”/“堆栈帧”、“编译器”/“范围检查”和“编译器”/“使用调试DCUs”选项并设置“项目”/“全部构建” . ●(C++ Builder)禁用“C++ Linker”/“Output”/“Map with mangled names”选项,为您的应用程序启用CodeGuard(某些选项可能与EurekaLog冲突)。

如果这没有帮助,您应该提供更多信息:当您的应用程序触发异常时会发生什么?是否出现 EurekaLog 窗口?

于 2014-01-17T13:34:58.990 回答
0

EurekaLog 对于你想要的东西来说太过分了(它也会增加编译时间 3-5 倍)。如果您只想检测内存泄漏,请使用 FastMM4。它已经与 Delphi 一起交付,并且比 EurekaLog 更便宜(便宜=免费 :))。

如何在 FastMM4 中启用完全调试模式?

PS:如果你真的必须使用 EurekaLog,请使用 v6。v7 完全不稳定。

于 2015-05-14T20:57:17.897 回答
0

您忘记关闭“仅在调试器下运行时激活”选项,该选项默认启用。

于 2019-06-11T12:08:19.093 回答