您的位置:首页 > 编程语言

visual studio 2010远程调试.NET代码实践

2014-01-04 00:01 417 查看
本地主机:visual studio 2010 + win7 64 bit

远程主机: window server 2008 R2 64 bit +
visual studio 2010 remote debugger (64bit)

1. 原理

远程主机运行 visual studio 2010 remote debugger, 该程序作为调试服务程序监听调试客户端的请求

本地主机选择项目代码,选择主菜单debug->attach process, 选择远程主机,列出远程主机所有进行的进程,找到要调试的进程attach,这个过程即为本地调试器向远程

主机的调试服务程序建立双向连接,连接成功后即可设置断点,进行调试



2. 原理很简单,实践很坑爹

(1) 若本地主机和远程主机没有域之类的关系,则必须要在本地和远程都有相同的管理员账号和密码

(2) 用该管理员账号登陆远程主机, 以管理员身份运行调试器,若调试32位的则运行32的调试器

(3) 用同样管理员账号,在本地主机打开visual studio 2010, 选择要调试的project, 主菜单debug->attach to process,在弹出的对话框中,选择qualifier,选择后找到远程主机,即显示出远程主机的进程,选择调试的process, attach

FAQ:

在attach to process后选择远程主机,提示登录失败,确认账号密码是否一样,可以尝试用net use命令测试,注意qualifier显示的都是主机名而非IP名,net use要用主机名测试

在attach to process时提示无法调试32位,需要运行32位debugger, 是远程主机需要运行32位(x86)调试器

在attach to process时visual studio 2010提示 no symobol not founded, 在debug->options里设置symbol的路径,这个symbol路径应该在远程主机process的pdb文件所在目录

笔者在实践中磕磕碰碰了大半天才弄通,希望能让其他人少走弯路,远程调试还是很强大,不用在本地部署就可以直接调试,很适合对运行环境依赖较大的情况以及团队开发。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: