Visual Studio:实时方法调用跟踪?

时间:2010-07-06 20:40:07

标签: c# .net silverlight

这就是我正在寻找的内容:我希望能够在调试程序时获得实时方法调用列表。例如,假设我通过调试器运行我的程序,如果我按下按钮或在我的程序中执行任何操作,我希望它能够实时吐出,在Visual Studio插件中实时显示,它通过的所有方法当我按下此按钮或对我的程序执行某种用户操作时。

我实际上曾经编写了一个visual studio插件,通过使用visual studio profiler api来实现这一点(我必须编写一个c ++ com服务器dll来接收这些信息并将其传回我的c#插件)。几年前我做了这个,我不知道我把它放在哪里。但是我想知道微软是否在visual studio 2010中做了类似的事情,或者你是否知道这样的任何第三方插件,因为它是一个非常方便的调试工具。

由于

6 个答案:

答案 0 :(得分:1)

查看Visual Studio 2010的Intellitrace功能 - 它可能为您提供所需:http://msdn.microsoft.com/en-us/library/dd264915.aspx

答案 1 :(得分:0)

您应该在Visual Studio 2010中检查IntelliTrace调试。它仅适用于x86

答案 2 :(得分:0)

它不是免费的,它甚至不便宜,但RedGate's ANTS Performance Profiler可以提供这些数据等。

答案 3 :(得分:0)

我认为您可以使用AOP实现这一目标,例如: PostSharp以及OnMethodBoundaryAspectMultiCastAttribute的实现,将您的方面应用于您的计划的每个方法。他们甚至有example的东西与你想要的东西非常相似。

答案 4 :(得分:0)

截至2018年8月15日的更新链接:IntelliTrace

请注意,此功能仅在企业版中

从链接页面:

  

使用时,您可以花费更少的时间调试应用程序   IntelliTrace记录和跟踪代码的执行历史记录。您   可以轻松发现错误,因为IntelliTrace可让您:

  •   

    记录特定事件

  •   

    检查相关代码,调试器事件期间在“本地”窗口中显示的数据以及函数调用信息

  •   

    调试难以重现或在部署中发生的错误

  

您可以在Visual Studio Enterprise版中使用IntelliTrace(但不能使用   专业版或社区版)

答案 5 :(得分:0)

我的Runtime Flow扩展名在您按下按钮或在程序中执行任何操作时显示方法调用列表。它可以在Visual Studio调试器之外运行。