远程调试
在开发过程中,我们经常会碰到在实际生产环境下发生一个bug,然而,在自己的开发环境下死活模拟不出来,有时甚至把自己的代码直连到产生环境的数据库中,还是模拟不出来问题。想到在服务器上调试吧,那台机器又没装VS,真是痛苦。
猛然间发现VS中,在调试界面中,有一个远程调试,想能否利用起来呢:
我们试试吧!!
总体设想,为远程调试时,不能够修改远程机器的帐户信息,不能进行远程机器重启,同时需要不影响用户现有的操作。
将我们本机开发环境下"VS安装目录"/Common7/IDE/Remote Debugger下,找到有两个子文件夹:x64和x86 , 分别对应64位机和32位机,将该目录复制到目标调试机上(随便哪个目录)
运行目录中的"msvsmon.exe"程序,运行后,如果提示下面界面,则请打开防火墙开放以下端口,或直接关闭防火墙。
在启动界面上,打开工具/选项:
将身份验证模式改成 windows身份验证, 如果用无身份验证则将不能调试C#程序,只能调试C++程序。
将运行程序或web部署包,放在目标机上, 然后里面一定要放上pdb文件。
在客户端(调试端)机器上,新增一个用户,跟客户机器用户名、密码相同,然后再用这新建的用户登陆,完成后,打开VS代码,然后点击附加到进程:
传输选择默认值(请不要选择远程,那个主要调C++),然后在限定符中输入"用户名@ip"或"用户名@机器名"
这时,在下面的可用进程中,就可以找到你的进程,再点附加就可以调试,方法与调试本机程序一至。
注意点:
By zjf
@ 2012-06-30 23:15
新闻热点
疑难解答