VS远程调试

背景:

    有时候遇到客户的机器上发现的问题,但本地无法复现,仅凭现象很难分析,此时就需要使用VS的远程调试,可以做到使用本地代码调试客户机的程序。

    下面,以VS2010为例,介绍一下VS远程调试客户端程序的方法。

准备:

(1)保证本地代码和远程机器的软件版本对应的代码一致;

(2)若是release调试,需要设置调试环境(调试信息格式/优化/生成调试信息);

(3)关闭远程计算机的防火墙;

步骤:

第一步,目标机器上的配置:

(1)将Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger 拷贝到目标计算机中,位置随意;

(2)在目标电脑上以管理员身份运行msvsmon.exe,在【工具】->【选项】中设置为【无身份验证(仅限本机)】;



第二步,本地调试的准备:

有两种方式,均可。

方式一:通过本地代码直接启动远程电脑的exe调试

A:将本地pdb文件拷贝到目标电脑的exe同目录下(也可以是其他指定的符号路径);

B:将本地代码生成的的exe替换到远程机器中(替换前注意备份),调用的DLL还是目标计算机上的DLL;

C:设置本地开发环境的启动工程项的【配置属性】->【调试】,类似下图所示:


其中,远程命令是远程电脑exe的全路径,工作目录是exe所在目录,远程服务器名称为IP地址,可为局域网地址,也可为外网IP;


方式二:本地附加远程电脑的进程调试

A:在目标电脑上运行exe;

B:在本地VS中打开【调试】->【附加到进程】界面;

C:配置界面,类似下图:


其中,【传输】选择远程,【限定符】输入客户端电脑的IP地址,然后点击【刷新】按钮;

D:在刷新出来的进程列表中选择要附加的进程即可;

 

注意,附加到进程调试也需要将PDB文件拷到远程的机器中,若远程电脑的进程列表已经刷出,但附加时提示找不到,检查远程电脑的msvsmon.exe是否以管理员权限运行;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值