【发布时间】:2012-04-04 09:35:17
【问题描述】:
在 Visual Studio 中,您可以显示单个函数的调用层次结构。我正在寻找的是相同的功能,但可以从 C# 代码内部访问。
是否可以通过自己编写的 Visual Studio 插件使用某些 API?或者我可以直接访问一些库来进行代码分析吗?
我通过一些静态代码分析得到程序的CFG就足够了。
【问题讨论】:
-
看看here。
-
这可能是最好的方法,但它没有考虑内联方法,所以它并不完美......无论如何+1,因为我想不出更好的选择!
-
而且是运行时分析,我在找静态分析。
-
@Tarion 你怎么能做到这一点?假设您使用依赖注入(现在大多数人都使用),您如何知道已为接口配置了哪个实现,因此要运行哪些方法调用?
-
最后我有一个库,想知道该库上的函数在哪里被调用。如您所见,它与 Vs 集成的“调用层次结构”一起使用。当有人将我的方法调用放入委托时,我不需要支持所有特殊情况。
标签: c# callstack control-flow-graph