我可以从我们的Delphi应用程序发出调试符号,Process Explorer可以使用它吗?

前端之家收集整理的这篇文章主要介绍了我可以从我们的Delphi应用程序发出调试符号,Process Explorer可以使用它吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在调查一个使用Delphi 2010编写的应用程序的性能问题.Delphi是否会在查看当前运行的线程时发出 Process Explorer可以使用的符号,以便我可以看到函数名?

我阻止了我的可执行文件名称,但是您可以看到它只给我该函数的内存地址,如果可能,我想要解析函数名(如我已经为ole32.dll和ntdll。 dll,因为我正在使用MS符号服务器)。

我知道这可以为VC++ applications and WinDbg完成…可以用Delphi应用程序和Process Explorer完成吗?

解决方法

是的,你需要做的是确保项目是用调试信息编译的,并且链接器发出一个详细的地图文件(项目链接选项)。不确定,但您也可能需要检查链接器选项上的“包含远程调试符号”。

当你这样做时,你可以使用一个实用程序来将地图转换成ProcessExplorer使用的dbg格式。

我们在工作中执行此操作,只要我们需要在我们的一个测试服务器上的挂起线程上获取堆栈跟踪。

我们使用的Map2Dbg实用程序:https://github.com/andremussche/map2dbg

猜你在找的Delphi相关文章