winDbg在VMware调试驱动遇到的问题

最近看《寒江独钓-windows内核安全编程》里面开始的用winDbg调试虚拟机驱动连接总是失败:如下图:

在虚拟机上修改后的boot.ini文件内容如下:

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)/WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect/debug /debugport=com1 /baudrate=115200

可是总是连接不上,在网上差了资料才知道,VM创建的虚拟串口有时是com2端口,设备名称为Serial Port2,在VM上的系统的硬件管理器上会发现只有com2端口,而没有com1口。此时boot.ini的设置是错误的。应该将boot.ini文件改为

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)/WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect/debug /debugport=com2 /baudrate=115200

 建立命名管道:

修改winDbg的快捷方式目标为:

"D:\Debugging Tools for Windows (x86)\windbg.exe" -b -k com:port=\\.\pipe\com_2,baud=115200,pipe

虚拟机进入debug启动选项,winDbg命令kd>g,就可以连接了:

原文地址:https://www.cnblogs.com/Lamboy/p/2301339.html