ps:本人按照下面的方式设置成功,个人感觉写的也比较清楚

来源:http://www.cnblogs.com/OpenCoder/archive/2010/02/17/1668983.html

 

vs支持远程调试但是对于通过 匿名调试的方式实际上是无法设置断点的,因为符号没有加载!要想调试,必须采用windows身份验证! 也就是和远程主机设置一样的用户名和密码.

VS是支持远程调试的,这样在自己公司就可以远程调试在客户机上的程序了

VS的远程调试分为两种:

直接远程调试:这种调试方法必须在有VS项目文件下才可以使用(因为被调试机的地址要在项目文件中设置),具体内容请见:http://www.cnblogs.com/tengs2000/articles/1070760.html  里的方法一

附加进程调试:具体内容请见:http://www.cnblogs.com/tengs2000/articles/1070760.html  里的方法二

这里我只说几个要值得注意的地方

1、附加进程调试又分为两种:(1)Window身份验证远程调试 (2)匿名远程调试

  • Windows身份远程调试在调试主机上VS里的附加进程要用默认模式,这里请注意不要被远程模式的字面意思欺骗了,"远程(无身份验证时仅限本机)"这个模式实际上指的是匿名远程调试需要输入被调试的主机名和端口号
  • Windows身份验证远程调试必须要在调试机和被调试机上使用相同用户名和密码的Windows账户,这样做是为了验证调试机的身份。
  • 将远程调试作为被调试机的服务可以免除"Windows身份验证远程调试必须要在调试机和被调试机上使用相同用户名和密码的Windows账户"这个限制,因为在设置windows服务的时候会要求输入允许进行调试的机器的登录名和密码,只要调试者在他的系统上使用该用户名和密码就可以使用远程调试。
  • 直接远程调试只支持Visual Studio 远程调试器上的windows身份验证调试模式,不支持将远程调试作为被调试机的服务和匿名远程调试
  • 使用匿名远程调试有个问题,附加进程上的被调试机进程没有用户名,导致VS上设置的断点全不起作用,感觉匿名远程调试如同虚设.....至今没有找到解决办法........
  • 使用匿名远程调试的时候如果在msvsmon上没有选择"允许任何用户进行调试"复选框,那么仍然有:"调试机和被调试机上使用相同用户名和密码的Windows账户"这个限制,但是就算是在匿名远程调试下使用相同的用户名和密码你还是会发现附加进程里出现的被调试机进程还是没有用户名,这仍然说明设置断点不起作用

2、设置

前提条件:

调试机和被调试机都在一个局域网内,且必须在一个网段
调试机和被调试机必须登录相同的用户,用户名必须一直
关闭防火墙或打开相应的端口,一般是4015
调试机和被调试机的本地安全策略中的网络访问必须改为"经典,本地用户以自己的身份验证",路径为控制面板->用户管理->本地安全设置->本地策略->安全选项->网络访问

 

调试方法:
至此有2种调试方法:一种是匿名调试,无需验证,一种是Window身份验证调试:

 匿名调试:

1.被调试机的msvsmon下选择工具->选项,点击无身份验证模式(只限本机)

2.之后可以看到主机名和IP,一般是hostname:4015的形式
3.调试机打开VS,选择附加到进程

4.传输选择远程(无身份验证时仅限本机)

5.限定符选择hostname:4015,之后刷新就可以看到进程列表了

Window身份验证调试:这种方法需要调试机和被调试机的用户名和密码完全一致

1.被调试机的msvsmon下选择工具->选项,点击windows身份验证

2.调试机打开VS,选择附加到进程

3.传输选择默认

4.限定符选择,之后刷新就可以看到进程列表了

vs2010远程调试断点无效问题的更多相关文章

  1. VS2010远程调试C#程序

    场景: 客户的计算机运行程序出现异常,由于办公场所不在一起,无法直接在客户的机器上调试.此时希望可以直接在开发人员的计算机(本地机器)上远程调试客户机上的软件. 假设: 本地机器的系统账户为 GIS, ...

  2. java远程调试(断点)程序/tomcat( eclipse远程调试Tomcat方法)

    tomcat远程调试: 1.Linux中配置tomcat在catalina.sh中添加如下CATALINA_OPTS="-Xdebug  -Xrunjdwp:transport=dt_soc ...

  3. VS2010远程调试

    1, A:调试机. B:远端被调试机. 2, 从A机的VS2010的安装目录里面,找到../Remote Debugger文件,复制到B机. 3, 启动B机上复制过来的目录下的msvsmon.exe ...

  4. VS2010 远程调试

    1.在客户端电脑建一个账户,账户名和密码和调试端的账户密码一样 2.在客户端电脑进入 管理工具-本地安全策略-本地策略-安全选项 网络访问:本地账户的共享和安全模式”,改为“经典-本地用户以自己的身份 ...

  5. VS2010 断点无效肿么办?

    [1]分析原理: 1. 断点无效是因为目标文件和源文件的更新时间不一致, 编译器不认为当前的源文件是目标文件的当前版本. 2. IDE不会关心源文件的编码格式,能读入即可, 另存为Unicode或AS ...

  6. .NET C#微信公众号开发远程断点调试(本地远程调试生产环境代码)

    最近在做微信公众号开发,由于之前没有接触过,突然发现调试不方便,不方便进行断点跟踪调试.因为微信那边绑定的服务器地址必须是公网地址,但是还是想进行断点调试(毕竟这样太方便了,程序有Bug,一步步断点跟 ...

  7. PHPStorm+Xdebug断点远程调试PHP xdebug安装

    一.xdebug安装 wget http://www.xdebug.org/files/xdebug-2.2.3.tgz #下载Xdebug tar xzf xdebug-2.2.3.tgz cd x ...

  8. 可以用命令行控制eclipse断点增加删除、远程调试创建与启动的插件

    java # 创建断点(支持条件断点) curl -X PUT -H "Content-Type:application/json" --data '{"language ...

  9. vs2012远程调试功能的改进

    不知道大家有没有遇到过这种情况,刚开发完的程序,明明在本机能够好好的运行,可是部署到服务器过分发给用户时,总是出现莫名其妙的错误. 一时半会又看不出问题来,怎么办呢?难道只能在服务器或是客户电脑上装一 ...

随机推荐

  1. 过河卒(Noip2002)(dp)

    过河卒(Noip2002) 时间限制: 1 Sec  内存限制: 128 MB提交: 7  解决: 6[提交][状态][讨论版][命题人:quanxing] 题目描述 棋盘上A点有一个过河卒,需要走到 ...

  2. 杂项-EMS:目录

    ylbtech-杂项-EMS:目录 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   7.返回顶部   8.返回顶部   9.返回顶部   ...

  3. AngularJS:Service

    ylbtech-AngularJS:Service 1.返回顶部 1. AngularJS 服务(Service) AngularJS 中你可以创建自己的服务,或使用内建服务. 什么是服务? 在 An ...

  4. Unity3D版本之我见

    关心Unity版本的变化以及了解未来版本的内容是专业做Unity的同学必备的功课,下面我来说一下我对4.0以后版本的一些见解. v4.0: 这个版本比3.5有较大的跳跃,首先最大卖点是新的动作系统Me ...

  5. VMware80端口映射

    目标是外网访问80端口,然后映射到虚拟机的80端口,80映射到80. 1.首先80端口是最常用的端口,要确认主机80端口是否被占用,如果被占用,停止或者修改占用80端口程序. 2.80端口默认防火墙是 ...

  6. Nginx启动提示找不到libpcre.so.1解决方法

    如果是32位系统 [root@lee ~]#  ln -s /usr/local/lib/libpcre.so.1 /lib 如果是64位系统 [root@lee ~]#  ln -s /usr/lo ...

  7. ulimit open files linux打开文件数设置验证

    #include <stdio.h> #include <sys/types.h> #include <fcntl.h> #include <stdlib.h ...

  8. Java微信公众平台开发--番外篇,对GlobalConstants文件的补充

    转自:http://www.cuiyongzhi.com/post/63.html 之前发过一个[微信开发]系列性的文章,也引来了不少朋友观看和点评交流,可能我在写文章时有所疏忽,对部分文件给出的不是 ...

  9. Oracle11gR2--SEC_CASE_SENSITIVE_LOGON参数解析

    在Oracle的11g之前的版本中密码是不区分大小写的(使用双引号强制除外). 在Oracle的11g以及以后的版本中对此有所增强.从此密码有了大小写的区分. 这个大小写敏感特性是通过SEC_CASE ...

  10. elastic(10) 基本查询

    # 指定index名以及type名的搜索 GET /library/books/_search?q=title:elasticsearch # 指定index名没有type名的搜索 GET /libr ...