【问题标题】:Is there a tool for Visual Studio which can show the list of all called functions?是否有 Visual Studio 的工具可以显示所有调用函数的列表?
【发布时间】:2012-07-10 14:05:41
【问题描述】:

在调试应用程序时,查看调用方法的顺序可能很有用。可以在每个方法中编写 Debug.WriteLine("Called MethodName") 但我的项目中有大量方法。

有记录方法调用的工具吗?

【问题讨论】:

  • 您可以查看call stack
  • @NaveenBhat 但 callstack 仅显示您当前所在的位置。不显示历史记录

标签: visual-studio


【解决方案1】:

Runtime Flow(由我开发)显示 .NET 应用程序中的所有函数调用。

【讨论】:

  • @sergey-vlasov 不错的工具,但是我缺少一个功能。如果它可以以纯文本形式输出函数调用,那就太好了,那么就可以区分两个执行(使用不同的输入数据)。非常适合调试!
  • @salle55 确实需要一些手动操作,但是您可以使用流程窗口中的“复制为文本”按钮将执行作为纯文本复制到剪贴板。
  • @SergeyVlasov 我尝试使用试用版。我有一个部署到不同解决方案中的类项目,并且调试它在流窗口中没有显示任何条目。我使用调试器作为附加到进程(Ctrl + Alt + P)。在这种情况下也可以吗?
  • @Vishnu 运行时流程不使用 Visual Studio 调试器。您需要通过 Runtime Flow 启动您的流程,并确保监控过滤器包含您的类项目 dll。
【解决方案2】:

正如评论中提到的,Visual Studio Call Stack 窗口已经实现了这一点。

但是,如果您真的想要更多信息,您可以随时添加Tracing 信息。

【讨论】:

  • CallStack 窗口仅显示调用堆栈,但不显示自应用程序运行以来的所有调用函数。跟踪类可能有用,但我需要一个环境工具。
  • @EugeneMaksimov:你可以使用DebugView...
  • 我的意思是 Visual Studio 环境。也许有插件有这个功能。
  • DebugView 只输出调试消息,如果您没有代码但想查看应用程序可能发出的任何调试消息,它很有用
【解决方案3】:

您可以使用 AOP(面向方面​​的编程)框架让您的生活更轻松。

这里有一个如何使用 PostSharp 记录方法调用的工作示例:http://www.codeproject.com/Articles/337564/Aspect-Oriented-Programming-Using-Csharp-and-PostS

【讨论】:

  • 也许不是一个工具,但它是记录应用程序中所有方法调用的一种快速且不显眼的方式
猜你喜欢
  • 1970-01-01
  • 2017-11-02
  • 2012-01-25
  • 1970-01-01
  • 1970-01-01
  • 2011-02-12
  • 1970-01-01
  • 2022-12-06
  • 1970-01-01
相关资源
最近更新 更多