我在我认为与鼠标单击事件有关的代码块中遇到问题,但我似乎无法在我的代码中捕获确切的事件。我已经使用 C# 调试器单步执行我的代码,并且在我的一个事件结束后,代码只是锁定了。
我的帖子的目的是询问是否有任何软件可以监视我的过程并让我知道在我按下 F11 键并且代码冻结后触发的事件。我试过 SysInternals'procmon.exe
但这并没有告诉我哪些事件正在触发。
我在我认为与鼠标单击事件有关的代码块中遇到问题,但我似乎无法在我的代码中捕获确切的事件。我已经使用 C# 调试器单步执行我的代码,并且在我的一个事件结束后,代码只是锁定了。
我的帖子的目的是询问是否有任何软件可以监视我的过程并让我知道在我按下 F11 键并且代码冻结后触发的事件。我试过 SysInternals'procmon.exe
但这并没有告诉我哪些事件正在触发。
你试过间谍++吗?它是 Visual Studio 附带的工具(至少 2003 和 2005 年)。在我的默认 2003 和 2005 安装中,Spy++ 位于:开始 | 程序文件 | 微软Visual Studio 200X | Visual Studio 工具 | 间谍++
运行 Spy++ 后,从“搜索”菜单中选择“查找窗口...”。将“Finder Tool”拖到您要观看事件的窗口或控件上,然后单击“确定”。右键单击树中选定的项目,然后选择“消息”。这将打开一个窗口,在消息到达您感兴趣的窗口时显示消息。
如果 Spy++ 没有得到你需要的东西,那么Managed Spy呢?它看起来像 Spy++,但专门用于托管代码。我没试过。
[它] 在基于 .NET 的客户端应用程序中显示控件的树状视图。您可以选择任何控件并获取或设置其上的任何属性。您还可以记录控件引发的一组过滤事件。
你在使用多线程吗?如果是这样,请尽量避免将控件和其他 Windows 窗体对象传递到窗体线程之外,因为调试器将尝试访问对象的值,这将导致调试器冻结一段时间。
CLRProfiler可能会做你想做的事。
工具概述状态
CLR Profiler 包括许多非常有用的分配配置文件视图,包括已分配类型的直方图、分配和调用图、显示各代 GC 的时间线以及这些收集后托管堆的结果状态,以及一个调用显示每个方法分配和程序集负载的树。
内存使用确实在此描述中出售,但它确实提到了“调用树”,以及如何使用它的链接,提到
调用树视图 提供应用程序执行的基于文本的、按时间顺序排列的分层视图。
祝你好运。
为什么不使用log4net 之类的日志记录工具?