vs2012远程调试功能的改进

不知道你们有没有遇到过这种状况,刚开发完的程序,明明在本机可以好好的运行,但是部署到服务器过度发给用户时,老是出现莫名其妙的错误。html

一时半会又看不出问题来,怎么办呢?难道只能在服务器或是客户电脑上装一个vs、跟一下代码吗?服务器

其实不用的,vs有一个远程调试的功能。spa

这个功能是这样的,程序在其余的电脑上运行,可是咱们能够在本地电脑上进行断点跟踪。调试

下面以vs2012为例,为你们介绍一下无身份验证的远程调试(若是要用有身份验证,又没有域环境,参见最后的总结),同时也说一下vs2012与之前版本在远程调试功能方面的改进。htm

一、从开始菜单中打开“Remote Debugger”文件夹,打开以后,你会看到两个文件夹,这个是要复制到远程计算机上的,只须要根据具体环境从两个里选出一个复制过去就行了。blog

二、复制完以后,在远程电脑上打开vs远程调试监视器(“msvsmon.exe”),会出现下图中的窗口,点击选项菜单,选中无身份验证和容许任何用户进行调试。进程

而后点击肯定,这样,远程计算机就设置好了。固然,别忘了在远程计算机上启动你要调试的程序。ip

三、而后,咱们在本身的电脑上,打开项目,从调试菜单打开附加到进程窗口,选择远程,输入远程计算机的ip,而后回车;开发

再选择要调试的程序,点击附加按钮。好了,点个断点,试试吧。部署

四、vs2012与以前版本的不一样。

看看这张图,是否是很熟悉,不就是在远程计算机上的设置窗口嘛。呵呵,再仔细看看,这个张图和前面那张是不同的。看到“仅限本机”几个字了吧。

这张图是从vs2010的远程调试监视器中截下来的,这个仅限本机是什么意思呢?通过几回试验,我得出一个结论,这个“本机”的意思,应该是“本地代码”,

和“托管代码”是想对应的。若是用vs2012以前的版本,也按照前三节所说的方法设置,是没有办法“断点”的,由于咱们要调试的代码是“托管代码”。

那么,此时应该怎么设置呢?咱们只能选择“Windows 身份验证”那个单选框了。附加的时候,也不能再选择远程了,只能选择“默认”。

 总结一下,若是用vs2012以前的版本进行远程调试须要注意的几点:

a、不能选择无身份验证

b、若是不是域环境,远程计算机和本地计算机必须同时使用相同的账号密码

c、远程计算机上的程序文件要相应包含“.pdb”文件

 

原文地址:http://www.cnblogs.com/fantong/archive/2012/09/17/2688342.html

相关文章
相关标签/搜索