1、使用visual studio 的remote debugger
在widnows的安装盘的根目录下的Remote Debugger文件夹中选择合适的安装文件,一路next:
安装完毕后,为方便调试,可安照下图设置:
(如果启用了windows的防火墙,记得打开udp协议的4015端口,上图的默认端口为4015)
在visual studio中选择附加到进程,选择logonui.exe进程,点击attach:
接下来就跟本地代码一样调试了
2、使用windbg+psexec单机调试
psexec是sysinternals suite中的一个组件,可在:http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx下载
在目标机器上打开命令行,执行以下命令
psexec -dsx cmd.exe
按下CTRL-ALT-DEL来切换用户时会加载logonui.exe,这时按下Alt-Tab会切换到命令提示符:
windbg –pn logonui.exe –srcpath %CD%
就可以使用windbg来调试了
这种方法不如第一种方法直观,特别是对于不熟悉windbg的人。好处是只需要一台机器就可以了,不需要虚拟机。