DotNet程序的调试,是DotNet程序员必备的技能之一,开发出稳定的程序、解决程序的疑难杂症都需要很强大的调试能力。DotNet调试有很多方法和技巧。现在本文就介绍一下借助DebugView工具进行调试的方法,以及由DebugView引申出来的知识点。
DebugView是一个查看调试信息的非常棒的工具,支持Debug、Release模式编译的程序,甚至支持内核程序,而且能够定制各种过滤条件,让你只看到关心的输出信息,而且可以定制高亮显示的内容等等,非常方便。
捕捉Release模式的Win32程序输出的调试信息,需要选中CaptureGlobalWin32选项:
可以通过include、exclude设置过滤条件,包含指定字符串的输出信息将会被过滤。还可以通过exclude条件过滤掉对应进程ID的调试信息。多个条件使用“;”分隔,而且支持“*”通配符。
DebugView支持远程捕捉调试信息。首先在远程机器上通过如下命令启动DebugView:
输出信息到DebugView的几种方式
DebugView的一些功能是不是让你心动了呢。俗话说心动不如行动,但是在行动之前,首先要知道C#如何将调试信息输出到DebugView中。
通过编程输出一些调试信息到DebugView中,一共有三种方式:
Debug.WriteLine
Debugger.Log
Kernal32.dll中的OutputDebugString方法
通过Debug.WriteLine可以将调试信息写入到DebugView中
Debug.WriteLine已经很好用了,唯一的缺点就是在Release模式下无效。那么在Release模式下就可以使用Debugger.Log方法
做C++开发的应该知道可以通过OutputDebugString这个API开实现输出调试信息到DebugView中吧。那么C++能做的,C#也能做。可以通过PInvoke的方式引入此方法,这个API属于Kernel32.dll
然后就可以通过调用此方法,将调试信息输出到DebugView中。
上一篇:什么是C++的堆栈指引
下一篇:C#泛型具体是什么