转载请注明出处:http://blog.csdn.net/sunboyhch


1 先在vmware里选择调试模式让虚拟机停止,等待windbg发出 g命令。


2 打开windbg,出现断点提示,输入g,虚拟机继续运行。

3 编辑你要调试的源代码,在你需要调试的代码中添加硬断点。如果不添加硬断点,将没有办法进入所调试的程序中。在你需要调试的程序中加入以下代码: 
DbgBreakPoint();//放在需要调试的地方重新编译驱动程序 或加入软断点 _asm int 3

4 用DDK来编译驱动,输入build -cZg   把编译好的驱动和应用程序考到虚拟机。

5 进入windbg,输入 bu driverName!DriverEntry, 其中driverName是驱动的名字,DriverEntry是需要中断的函数名,这样如果驱动运行,就会在DriverEntry处停止。

6 启动驱动,虚拟机会停止,windbg会自动响应,打开这个驱动的源码文件,并且停止在DriverEntry处。这时,可以单步运行调试。

注意:
1若Windbg显示一直busy的话,请按Crtl+Break,即进入可输入命令的状态
2打开VMware,Ctrl+Alt+Enter进入虚拟机全屏模式。
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐