I.远程调试情景

项目部署在远程服务器或非本地环境中,需要 处理应用中遇到的一些错误时 (不能直接附加进程或F5调试应用)

II. 远程调试准备

1.远程服务器--操作系统和硬件要求 MSDN

操作系统

  • Windows 10 (而不是 phone)

  • Windows 8 或 8.1 (而不是 phone)

  • Windows 7 Service Pack 1

  • Windows Server 2012 或 Windows Server 2012 R2

  • Windows Server 2008 Service Pack 2、Windows Server 2008 R2 Service Pack 1

支持的硬件配置

  • 1.6 GHz 或更快的处理器

  • 1 GB 的 RAM(如果在虚拟机上运行则需 1.5 GB)

  • 1 GB 的可用硬盘空间

  • 5400 RPM 硬盘驱动器

  • DirectX 9 支持的视频卡,可在 1024 x 768 或更高版本的显示分辨率下运行

2.远程服务器--下载并安装上的远程工具

方法1:

直接拷贝 Visual Studio对应安装目录下:{drive}\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\Remote Debugger下的文件至远程服务器

方法2:

  1. 在设备或服务器您想要调试的计算机 (而不运行 Visual Studio 的计算机),获取远程工具的正确版本。
版本 链接 说明
Visual Studio 2017 (最新版本) 远程工具 远程工具的最新版本是与所有 Visual Studio 2017 版本兼容。
始终下载匹配您设备的操作系统(x86、 x64、 或 ARM64) 的版本。
在Windows 服务器上,请参阅取消阻止文件下载有关帮助下载的远程工具。
Visual Studio 2015 远程工具 Visual Studio 2015 远程工具可从 My.VisualStudio.com。
如果系统提示,请加入免费
Visual Studio Dev Essentials
程序或使用 Visual Studio 订阅 id。 登录
在Windows 服务器上,请参阅
取消阻止文件下载
有关帮助下载的远程工具。

Visual Studio 2013

远程工具

下载 Visual Studio 2013 文档中的页
Visual Studio 2012

远程工具

下载 Visual Studio 2012 文档中的页
  1. 在下载页上,选择与你的操作系统 (x86、 x64、 ARM、 或 ARM64) 匹配的工具版本和下载并安装远程工具。

3.远程服务器--设置远程服务器上的远程调试器

您必须在远程计算机上具有管理权限。

  1. 定位远程调试器应用程序。 (它已经安装,在位置中找到 msvsmon.exe 或打开开始菜单并搜索远程调试器。)

    如果远程服务器上运行远程调试器,可以右键单击远程调试器应用并选择以管理员身份运行。 如果你不远程服务器上运行它,只是它正常启动。

  2. 当启动远程工具,在第一次 (或之前对其进行配置),则远程调试配置对话框随即出现。

  3. 如果 Windows 服务 API 未安装 (这仅在 Windows Server 2008 R2 时发生),选择安装按钮。

  4. 选择你想要在上面使用远程工具的网络类型。 必须至少选择一种网络类型。 如果这些计算机通过域连接,则必须选择第一项。 如果这些计算机通过工作组或家庭组连接,你需要视情况选择第二或第三项。

  5. 选择配置远程调试配置防火墙并启动该工具。

  6. 配置完成后,将显示远程调试器窗口。

    远程调试器现在正在等待连接。 请记下的服务器名称和端口号显示,因为它必须匹配更高版本使用 Visual Studio 中的配置。

    完成调试,需要停止远程调试器后,,单击文件 > 退出窗口上。 您可以重新启动它从启动菜单或从命令行:

    <远程调试器安装目录 >< x86、 x64、 ARM、 ARM64 或 Appx > \msvsmon.exe

    eg:

    D:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\Remote Debugger\x64> .\msvsmon.exe

III. 远程调试应用程序(从 Visual Studio 计算机附加对应进程调试)

  1. Visual Studio 计算机上,打开要调试的解决方案 xxxx。

  2. 在 Visual Studio 中,单击调试 > 附加到进程(Ctrl + Alt + P),或者重新附加进程

  3. 将链接目标设置为 <远程计算机名称>: 4022

  4. 单击刷新。 “可用进程” 窗口中将显示某些进程。

    如果看不到任何进程,请尝试使用的 IP 地址而不远程计算机名称 (端口是必需的)。 可以使用ipconfig获取 IPv4 地址的命令行中。
  1. 勾选“显示所有用户的进程” 。

  2. 键入进程名称,eg:w3wp.exe。

  3. 单击附加

  4. 访问部署在远程计算机上需要调试的服务即可。

    eg: 我们需要调试的web应用程序。

Tips:

更多远程调试信息参见 MSDN:Visual Studio 2017 Remote Debugging

参考资料

MSDN:Visual Studio 2017 Remote Debugging

远程调试 Visual Studio 中的 C# 或 Visual Basic 项目

远程调试 Visual Studio 中的 Visual c + + 项目

Visual Studio 2017 远程调试(Remote Debugger)应用的更多相关文章

  1. Visual Studio 2017 远程调试

    当你将.NET程序发布到不同机子时候,想要进行调试,但机子不足以安装VS或安装VS麻烦,可以考虑使用远程调试,这里以C#项目为例,asp.net方法略有不同 原理: 首先安装VS远程调试工具,有俩种安 ...

  2. 如何用Visual Studio Code远程调试运行在服务器上的nodejs应用

    假设我有一个nodejs应用,运行在AWS - 亚马逊云平台上(Amazone Web Service).我想用本地的Visual Studio Code来远程调试服务器端的nodejs应用. Vis ...

  3. visual studio远程调试 remote debugger

    下载远程debug工具: https://docs.microsoft.com/zh-cn/visualstudio/debugger/remote-debugging?view=vs-2015 或者 ...

  4. Visual Studio2017 远程调试 Remote Debugger

    前言 大家在使用vs打包后的文件部署到服务器后,有时候我们需要对线网的后台进行调试.但是它不像在VS中.这个时候我们该怎么调试呢? 微软想到了这一点,他们在 VS 中给我们提供了一个功能: Remot ...

  5. 使用Visual Studio 2012远程调试Windows Azure网站

    登录Windows Azure门户,点击"所有项目"中的网站名称. 点击"配置". 在"远程调试"选项中选择"打开",在 ...

  6. Visual Studio 2012远程调试中遇到的问题

    有的时候开发环境没问题的代码在生产环境中会某些开发环境无法重现的问题,或者需要对生产环境代码进行远程调试该怎么办? Vs已经提供给开发者远程调试的工具 下面简单讲讲该怎么用,前期准备:1.本地登录账户 ...

  7. Visual Studio 2017 Android 调试无法连接到虚拟机

    输出窗口输出如下: 1>Starting deploy 4.5" KitKat (4.4) HDPI Phone ... 1>Starting emulator 4.5" ...

  8. Visual Studio 2017 本地调试 Chrome浏览器自动退出

    在使用VS 2017(15..6 .15.7)对.NET Core MVC应用程序进行本地调试的时候,选择使用Chrome浏览器.但输入中文 就自动关闭Chrome浏览器,随后结束调试.但复制.粘贴中 ...

  9. 用visual studio 2017来调试python

    https://www.visualstudio.com/zh-hans/thank-you-downloading-visual-studio/?sku=Professional&rel=1 ...

随机推荐

  1. 微服务编译、启动jar命令指定配置文件

    nohup java -Xms512m -Xmx8g -Xmn512m -Xss512k -server -XX:+HeapDumpOnOutOfMemoryError -jar smp-bill-c ...

  2. 使用echarts绘制漂亮的渐变键盘仪表盘

    echarts官方示例和默认样式都比较难看,经过一顿捣鼓实现比较漂亮的渐变仪表盘. 第一步:设置轴线 将图表轴线.label.分割线.隐藏,只保留刻度,然后修改刻度样式达到最终效果.不过要注意的是ax ...

  3. ceph luminous 新功能之内置 dashboard

    # 开启 dashboard (在任一 mon_server 节点上)ceph mgr module enable dashboard # 设置dashboard 端口和IPceph config-k ...

  4. python---基本数据类型 dict(字典)

    1. 什么是字典 字典是python中唯一的映射类型, 由{ } 括起来的键值对组成,在dict中key是唯一的.字典是以key:value的形式来保存数据, 字典存储数据的时候是用的hash值来存储 ...

  5. 查域名对应的ip的命令:Nslookup

    使用Nslookup命令可查询域名对应的ip,如下所示

  6. 【timeisprecious】【JavaScript 】JavaScript RegExp \W 元字符

    JavaScript>RegExp正则表达式> \W 元字符 1 .From Runnob JavaScript RegExp \W 元字符 定义和用法: \W 元字符用于查找非单词字符. ...

  7. 线程池(Linux实现)

    讨论QQ群:135202158 本文技术参考了sourceforge项目c thread pool,链接:http://sourceforge.net/projects/cthpool/ 线程池如上一 ...

  8. (一)Python装饰器的通俗理解

    在学习Python的过程中,我相信有很多人和我一样,对Python的装饰器一直觉得很困惑,我也是困惑了好久,并通过思考和查阅才能略有领悟,我希望以下的内容会对你有帮助,我也努力通过通俗的方式使得对Py ...

  9. MySQL , MHA , Haproxy 配置

    1. 基本架构 2. 读端口影射 3. 写端口影射 进行一个Health Check MHA Manager对Master节点MySQL 进行存活监控 读FailOver 1 读FailOver 2 ...

  10. leetcode-844-比较含退格的字符串(用vector取代stack)

    题目描述: 给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果. # 代表退格字符. 示例 1: 输入:S = "ab#c", T = ...