3

环境:

Windows 7 64 位版本

虚拟机 (Vmware 8) + Virtualkd:Windows XP 32 位版本

尝试使用 调试内核ida 6.1,我收到此错误:

Windbg: using debugging tools from 'C:\Program Files (x86)\Debugging Tools for Windows (x86)\'
Connecting to the kernel with 'com:port=\\.\pipe\kd_WinXP_kerneldbg'
**Connect failed: Incorrect function.**
Flushing buffers, please wait...ok
Unloading IDP module C:\ida61\procs\pc.w32...

vmmon64看起来不错:

http://s13.postimg.org/qpn50bcdz/Untitled.png

连接字符串IDA

com:port=\\.\pipe\kd_WinXP_kerneldbg

请任何人

4

1 回答 1

3

当您有物理串行端口连接时,您使用的连接字符串。对于虚拟机,您需要使用稍微不同的字符串。尝试:

com:pipe,port=\\.\pipe\kd_WinXP_kerneldbg

pipe,port请注意虚拟机 COM 连接所需的额外部分。以下是可能的连接字符串,引用自Live Kernel-Mode Debugging Using WinDbg

windbg [-y SymbolPath] -k net:port=PortNumber,key=Key
windbg [-y SymbolPath] -k 1394:channel=1394Channel[,symlink=1394Protocol] 
windbg [-y SymbolPath] -k usb:targetname=USBString
windbg [-y SymbolPath] -k com:port=ComPort,baud=BaudRate
windbg [-y SymbolPath] -k com:pipe,port=\\VMHost\pipe\PipeName[,resets=0][,reconnect]
windbg [-y SymbolPath] -k com:modem
windbg [-y SymbolPath] -kl 
windbg [-y SymbolPath] -k 

如果 VM 与调试器在同一台机器上运行,则使用\\.\而不是\\VMHost\

一般来说,手动设置虚拟机的内核模式调试也可能会有所帮助。

于 2014-07-10T08:38:45.300 回答