如何在每次访问类时设置断点

在使用第三方系统时,特别是可动态加载提供程序,控制器,组件等的非常可配置的系统,我有时只想知道何时访问某个对象或类。 通常情况下,我会在源代码中的任何潜在行放置一个断点(令人讨厌,但它有效),但如果源不可用:

如何指示Visual Studio 2010 Ultimate打破对给定类的任何和每次访问?

注意:就我的经验而言,这通常是不可能的,但我希望看到它得到证实

您可以单击“ 调试”>“新建断点”>“断点”Ctrl-B直接带您到那里。 它会让你打破一个特定的function。

在调试过程中,您可以在“断点”窗口中看到是否找到该方法并且是否会被击中(红色圆形图标)(白色带圆圈图标,截至禁用断点),就像正常断点一样。

不是最优雅的,但如果你按Ctrl + F public那么你可以在F9 [set breakpoint]和F3 [find next]之间发送垃圾邮件,在每个公共入口点设置一个断点进入类。

您可能还希望为protectedinternal入口点以及任何显式接口实现(没有public声明)添加断点

在一次(VS2008之前),您可以通过选择全部(ctrl-a)然后设置断点(F9)在文件的每一行设置断点。

要在每个方法的条目上只设置一个,如果我没记错的话,一个宏。 查看John Robbins的博客作为可能的来源: http : //www.wintellect.com/CS/blogs/jrobbins/

[编辑:ctrl-A,F9在2010年或2008年不起作用,所以它必须是我记得这个的早期版本]

我刚为此制作了一个Visual Studio 2010插件。 检查一下: http : //weblogs.asp.net/uruit/archive/2011/08/04/visual-studio-2010-addin-setting-a-class-breakpoint.aspx

更新

这个项目现在生活在Github上 。 随意贡献。