c-当断点被击中时,如何在Lauterbach中保存堆栈帧



因此,当到达断点时,我想将带有本地变量的完整堆栈帧转储到.txt文件,然后使用"简历";选项重新启动,当再次到达断点时,创建新的.txt文件并再次保存调用堆栈。我刚刚浏览了文档,找不到保存堆栈帧的选项。断点窗口中的CMD对我来说很清楚。

在TRACE32中,您可以使用命令Frame /Args /Locals查看显示调用堆栈(带有局部变量(的窗口。

与任何其他命令一样,您可以使用预命令WinPrint.将窗口的显示重定向到文本文件。

因此,首先在TRACE32中设置打印以保存每个";打印";到文件
例如PRinTer.FILE c:/myProject/myLogfile-001.txt ASCIIE
如果选择的文件名以数字结尾,TRACE32将在每次打印后自动递增数字。

现在,命令WinPrint.Frame /Args /Locals将调用堆栈保存到文件c:\myProject/myLogfile-001.txt中,并递增文件索引。

综合起来:

  1. 使用例如PRinTer.FILE c:/myProject/myLogfile-001.txt ASCIIE设置打印到文件
  2. 使用例如Break.Set <address> /CMD "WinPrint.Frame /Args /Locals" /RESUME设置断点

当你写";堆叠帧";您可能只是指当前函数的局部变量,而不是整个调用堆栈。在这种情况下,使用命令Var.Local而不是Frame /Args /Locals

最新更新