简介
DebugView
是sysinternals
工具集中的一款用来查看调试信息的工具。不管你是内核开发人员还是应用程序开发人员,都会用到这款神器。先简单看看DebugView
可以干什么吧。
- 可以查看应用程序输出的调试信息。
- 可以查看驱动程序输出的调试信息。
- 可以查看本地机器的调试信息。
- 可以查看远程机器的调试信息。
- 可以根据规则高亮显示。
- 可以根据关键字过滤。
- 可以根据关键字搜索。
- 可以自动显示最新一条记录。
- ……
功能太多太全了,有木有?!心动了吗? 快跟我一起来了解下这个神器吧。
如何输出调试信息
应用程序和驱动程序都可以通过对应的API
生成调试信息。
-
非托管应用程序可以通过
Win32 API
OutputDebugString()
输出调试信息。 -
托管应用程序可以通过
System.Diagnostics.Debug.Print()
输出调试信息,内部会调用OutputDebugString()
。 -
驱动程序可以通过
DbgPrint()
或DbgPrintEx()
(或者使用KdPrint
或KdPrintEx
宏)输出调试信息。这两个宏在Debug
版里会分别映射到DbgPrint()
或DbgPrintEx()
,在Release
版会映射为空。
下图是一个使用DebugView
捕获C++
程序和C#
程序输出的调试信息的截屏。
示例