VS2017远程调试

来源:互联网 发布:网页数据采集器 编辑:程序博客网 时间:2024/06/05 18:46
由于某些因素,我需要程序在其他系统运行,但是又不想打日志,就想直接远程调试。

找了几个博客都有基础的教程,但都不能正常运行,决定自己写一个能用的。

首先去VS安装目录找到Remote Debugger目录(在安装目录的Common7\IDE里面,下图目录是因为我把VS2017安装在F:/Microsoft Visual Studio 2017):
Remote Debugger目录
将Remote Debugger文件夹扔进虚拟机。

然后在虚拟机中进入对应版本(X86或X64)的文件夹,运行msvsmon.exe
第一次运行会出现配置窗口:
msvsmon.exe配置
肯定是选择配置远程调试。

然后就能看到以下界面:
msvsmon.exe

然后工具->选项->身份验证模式 选择无身份验证,并且打勾允许任何用户进行调试:
这里写图片描述

设置完成后能看到出现了一个警告:
这里写图片描述

然后查看虚拟机的IP地址,一会需要。

以太网适配器 Ethernet0:   连接特定的 DNS 后缀 . . . . . . . : localdomain   本地链接 IPv6 地址. . . . . . . . : fe80::dc7b:54ae:8859:348a%9   IPv4 地址 . . . . . . . . . . . . : 192.168.163.132   子网掩码  . . . . . . . . . . . . : 255.255.255.0   默认网关. . . . . . . . . . . . . : 192.168.163.2

至此远程机器设置完成,接下来设置开发机。
首先到VS中打开项目属性,配置属性->调试,选择远程Windows调试器。
然后进行配置:
远程Windows调试器配置

远程命令:就是要执行文件的名字。(相对于目标机)
工作目录:就是应用程序的工作目录。(相对于目标机)
远程服务器名称:写远程计算机的IP(域名应该也是没有问题的,我没有测试)
部署目录:VS在调试的时候复制相关文件到指定目录。(相对于目标机)
部署Visual C++调试运行库:这个一般是需要的,毕竟目标机很少有带调试环境的。

然后确定就行了。网上很多博客至此就结束了,告诉我们可以成功运行了,但是我每次运行都提示我找不到文件。

我们还需要设置,打开配置管理器:
配置管理器位置

要把部署下面的单选框选择(默认是不选择的,所以不会部署文件):

然后选择调试器为远程Windows调试器:
选择远程Windows调试器

然后按F5或者单击远程Windows调试器,VS就会自动把文件部署到目标机器上并且开始调试。

参考:

为 Visual Studio 项目设置远程调试
在设备上安装远程工具