我在尝试使用 eurekalog 部署应用程序以解决特定场景中发生的一些内存泄漏时遇到问题。当我将我的应用程序项目配置为在 delphi IDE 下使用 eurekalog 并通过 IDE 运行时,它可以完美运行,报告泄漏和异常。当我在 IDE 之外运行 exe 时,它不会报告任何内容。
使用 eurekalog 部署应用程序是否有特殊配置?
谢谢
我在尝试使用 eurekalog 部署应用程序以解决特定场景中发生的一些内存泄漏时遇到问题。当我将我的应用程序项目配置为在 delphi IDE 下使用 eurekalog 并通过 IDE 运行时,它可以完美运行,报告泄漏和异常。当我在 IDE 之外运行 exe 时,它不会报告任何内容。
使用 eurekalog 部署应用程序是否有特殊配置?
谢谢
IDE 不会报告任何内容......应该有一个来自 EurekaLog 的窗口,提供调用堆栈和其他一些信息。来自EurekaLog 官方文档:
简短的回答:
要解决非工作、部分或误导性调用堆栈的问题 - 清除项目的 .map、.tds 和 .dcu 文件并确保: ●(Delphi) 启用“编译器”/“调试信息”、“链接器”/ “地图文件”=“详细”。●(C++ Builder)启用“C++编译器”/“调试”/“调试信息”、“C++编译器”/“调试”/“调试行号信息”、“C++链接器”/“完整调试信息”、“C++链接器” "/"输出"/"映射文件" = "详细段映射"。
增加EurekaLog的帮助等级: ●(Delphi)启用“编译器”/“堆栈帧”、“编译器”/“范围检查”和“编译器”/“使用调试DCUs”选项并设置“项目”/“全部构建” . ●(C++ Builder)禁用“C++ Linker”/“Output”/“Map with mangled names”选项,为您的应用程序启用CodeGuard(某些选项可能与EurekaLog冲突)。
如果这没有帮助,您应该提供更多信息:当您的应用程序触发异常时会发生什么?是否出现 EurekaLog 窗口?
EurekaLog 对于你想要的东西来说太过分了(它也会增加编译时间 3-5 倍)。如果您只想检测内存泄漏,请使用 FastMM4。它已经与 Delphi 一起交付,并且比 EurekaLog 更便宜(便宜=免费 :))。
PS:如果你真的必须使用 EurekaLog,请使用 v6。v7 完全不稳定。
您忘记关闭“仅在调试器下运行时激活”选项,该选项默认启用。