Re: 有个调试初级问题问大家

Windows内核调试

有个调试初级问题问大家


Da Vinci 2008-11-04, 12:33 下午
用ntsd远程调试Vista, 应该怎么设置remote?
windbg和ntsd应该是基于一种设计逻辑的, 以前都是用1394来调, 这样比较快(COM感觉比较慢, 能讲讲原理么).
ntsd全命令行的, 反而不清楚怎么设置remote了. 查了一些文档, 说的也很含糊.

Re: 有个调试初级问题问大家


格蠹老雷 2008-11-04, 22:06 下午
NTSD是用户态调试器,它只能调试用户态的程序。在严格意义上的WinDBG程序出现前,KD用来做内核调试,NTSD用来做用户态调试。WinDBG是NTSD和KD的Hybrid,既能做用户态调试,又能做内核态调试。
你所说的用NTSD远程调试Vista,是调试Vista中的应用程序么?如果是,那么可以用ntsd -remote再加上具体的连接参数。
ntsd -remote npipe:server=Server,pipe=PipeName[,password=Password]

ntsd -remote tcp:server=Server,port=Socket[,password=Password][,ipversion=6]

ntsd -remote tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6]

ntsd -remote com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password]

ntsd -remote spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password]

ntsd -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password]

ntsd -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password]




Re: 有个调试初级问题问大家


Coding 2008-11-05, 02:12 上午
用户态的remote调试,VS自带比较好用了,基于网络的,速度好很多。

Re: 有个调试初级问题问大家


Da Vinci 2008-11-05, 09:05 上午
谢Coding老大指教!

Re: 有个调试初级问题问大家


Da Vinci 2008-11-05, 09:08 上午
谢谢Raymond. 我是想用ntsd远程调试Vista的用户程序, 内核程序的话直接用Windbg就很好了.
有时候机器上不一定安装了VS, 所以用自带的Ntsd还是比较方便
谢谢指点

Re: 有个调试初级问题问大家


Coding 2008-11-05, 12:45 下午
不用在目标的Vista机器上装VS,只需要把Microsoft Visual Studio\Common7\IDE\Remote Debugger这个目录拷贝到目标机器上就行了。

还有个窍门是把本地VS编译以后输出EXE文件的目录共享出来,然后在目标的Vista机器上把这个目录映射成为网络磁盘,比如,映射到X盘,那么就在VS里面配置要运行的命令为X:\debug\aa.exe, 这样和本机调试没什么区别了,改了代码,编译,然后就可以直接调试了。

Powered by Community Server Powered by CnForums.Net