2011-09-14 24 views
3

是否可以将调试器的路由打印到文件或控制台中?我考虑如实际进入的方法的名称。 换句话说,我看到的打F11,F11,F11 ...我想在文件中。 我该怎么做?在VS2010中打印调试器(方法名称)的调用堆栈到文件或控制台

+0

这是称为IntelliTrace的VS2010 Ultimate版本的内置功能。我猜测你没有那个版本,你可能不得不用Debug + Windows + Call Stack窗口来做。 –

+0

@Hans Passant - IntelliTrace是否支持x64项目? Call Stack向我展示我现在在哪里。我想在一些txt文件中有这个跟踪。任何简单的方法来做到这一点? – Saint

回答

5

是的,你可以添加以下代码,或者只是从Immediate Window运行它,当你在休息方式:

System.IO.File.WriteAllText("myTrace.txt", new System.Diagnostics.StackTrace(true).ToString()) 

或者,你可以添加tracepoints到您的代码,并使用$调用堆栈伪变量。

更新:我叫OzCode一个Visual Studio扩展的共同创造者,我增加了一个feature,使得它很容易做的什么要求OP。该功能本质上是“类固醇上的追踪点”。

要做到这一点,使用QuickAction“创建跟踪点这里”

Create Tracepoint

然后输入你接下来要调用堆栈出现一些文本和/或表达式,并确保“保存堆栈”检查:

Save Stack

然后,每次你打你的跟踪点的时候,一个新的生产线将被添加到跟踪点浏览器。您可以点击旁边的箭头,它查看完整的调用堆栈:

Export

现在,只需点击“导出”按钮,在右上角您的所有调用堆栈保存到文件中。

相关问题