前言

大家在使用vs打包后的文件部署到服务器后,有时候我们需要对线网的后台进行调试。但是它不像在VS中。这个时候我们该怎么调试呢?

微软想到了这一点,他们在 VS 中给我们提供了一个功能: Remote Debugger,要远程调试我们就需要用到它。

关于 Remote Debugger

使用VS远程调试器Remote Debugger,你可以调试部署在不同的计算机上的VS应用程序。它适用于Windows桌面应用程序和ASP.NET的应用程序。

获取远程工具

获取远程工具的方式有两种。一种是从MSDN的文档中选择下载自己要下载的远程工具,还有一种是从你主机安装Visual Studio的目录中获取。

下载并安装远程工具

在要调试的设备或服务器(而不是机器运行Visual Studio),下载与你的操作系统的版本(X86,X64,或ARM版)相匹配的远程工具。

从主机拷贝

从主机VS的安装目录中拷贝Remote Debugger文件夹至你要远程的服务器。可以放到任意位置,不影响程序运行。

Program Files\Microsoft Visual Studio 14.0\Common7\IDE\Remote Debugger

启动远程调试器

Remote Debugger文件夹里面会有x86、x64两个文件夹对应相应版本的工具,根据服务器的系统环境进入相应的文件夹并以管理员身份运行里面的远程调试器msvsmon.exe。

上面就是我们运行的远程调试器,它默认是Windows身份验证的。打开工具>选项 配置如下:

远程调试的ASP.NET应用

在服务端配置的调试器有两种验证模式,Windows身份验证和无身份验证。下面演示Windows身份验证的示例。

首先运行本地项目,打开 调试>附加到进行 界面如下,我们只需要在连接和目标填上服务器IP和远程调试器选项中的端口号,然后点击查找。

这个时候服务器的远程调试器会显示你的已连接信息

选择Windows身份验证和无身份验证的区别就多了一个身份验证,验证通过后我们会看到服务器的全部进程,选择显示所有用户的进程找到w3wp.exe,然后附加到进程。

这个时候我们就可以链接在本地VS对服务器的程序进行调试了。

常见的问题

1.ASP.NET程序所有步骤都完成了,但还是无法调试。

答:要保证服务器代码和本地代码一致,也就是bin文件一致。实在不行就把本地bin文件替换服务器程序的bin文件。

2.其他语言的项目怎么调试?像C、VB等。

答:这些在MSDN上面都有,直达链接

3.我如果要下载远程调试工具该怎么选择

答:根据表选择对应版本

版本 链接 说明
Visual Studio 2015更新3 远程工具 如果出现提示,参加免费的Visual Studio开发要领组或者你可以注册一个有效的Visual Studio订阅。然后重新打开链接,如果有必要。总是下载版本匹配您的设备的操作系统(x86,x64或ARM版)
Visual Studio 2015(旧) 远程工具 如果出现提示,参加免费的Visual Studio开发要领组或者你可以注册一个有效的Visual Studio订阅。然后重新打开链接,如果有必要。
VisualStudio 2013年 远程工具 在Visual Studio 2013文档下载
VisualStudio 2012 远程工具 在Visual Studio 2012文档下载

参考:Remote Debugging

 

搜索

复制

Visual Studio2017 远程调试 Remote Debugger的更多相关文章

  1. visual studio远程调试 remote debugger

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

  2. Visual Studio 2017 远程调试(Remote Debugger)应用

    I.远程调试情景 项目部署在远程服务器或非本地环境中,需要 处理应用中遇到的一些错误时 (不能直接附加进程或F5调试应用). II. 远程调试准备 1.远程服务器--操作系统和硬件要求 MSDN 操作 ...

  3. Visual Studio远程调试

    Visual Studio支持调试远程机器上的程序,经过简单设置后,就像调试本地代码一样方便. 第一步:将vs工具里的Remote Debugger文件夹拷贝到目标机器.大致的目录应该是:D:\Pro ...

  4. CLR调试报错“Visual Studio远程调试监视器 (MSVSMON.EXE) 的 64 位版本无法调试 32 位进程或 32 位转储。请改用 32 位版本”的解决

    Win7 64位电脑上进行visual studio的数据库项目的CLR存储过程进行调试时,报错: ---------------------------Microsoft Visual Studio ...

  5. Visual Studio远程调试监视器(MSVSMON.EXE)的32位版本不能用于调试64位进程或64位转储

    在VS2013中调试Silverlight项目时,提示:无法附加.Visual Studio远程调试监视器(MSVSMON.EXE)的32位版本不能用于调试64位进程或64位转储.请改用64位版本. ...

  6. 安卓手机移动端Web开发调试之Chrome远程调试(Remote Debugging)

    一.让安卓打debug模式的apk包 二.将电脑中的chrome升级到最新版本,在chrome浏览器地址栏中输入chrome://inspect/#devices: 在智能手机还未普及时,移动设备的调 ...

  7. C#客户端程序Visual Stadio远程调试

    一,需求来源 在开发过程中,可能会要使用Win7 ,Win8 ,Win10等不同版本的系统去做兼容性调试,也有时候会去针对特别的显卡,无线网卡等等硬件设备的机器做优化,有一种较优的方案,那就是使用Vi ...

  8. Idea进行java应用的远程调试Remote debugging

    本文可以解决如下两个问题: 1.如何处理和调试那些只发生在生产环境(或其他远程环境)而本地开发环境可能没办法重现的"问题". 2.只有一个可以部署的war/jar包,只有class ...

  9. 在windows通过visual studio远程调试linux mono程序

    本文参考文章 https://github.com/techl/MonoRemoteDebugger 1.通过连接https://github.com/techl/MonoRemoteDebugger ...

随机推荐

  1. ReentrantLock实现原理及源码分析

    ReentrantLock是Java并发包中提供的一个可重入的互斥锁.ReentrantLock和synchronized在基本用法,行为语义上都是类似的,同样都具有可重入性.只不过相比原生的Sync ...

  2. angular JS中使用jquery datatable 自定义搜索按钮点击事件 和mRender的 ng-click事件

    'use strict'; app.controller('DataTableCtrl', function ($scope, $compile) { $scope.searchFiles = { n ...

  3. 使用pdfbox分页保存pdf为图片

    一.背景 pdfbox作为Apache开源的PDF操作工具,允许创建新的PDF文档,操作现有文档,以及从文档中提取内容的能力.Apache PDFBox还包括一些命令行实用工具.本文楼主主要介绍其中的 ...

  4. Mysql的JDBC

    Java程序可以通过JDBC链接数据库,通过JDBC可以方便的访问数据库,不必为特定的数据库编写专门的程序. 需要先配置mysql-connector-java-5.0.8-bin.jar 使用JDB ...

  5. 微信小程序-滚动消息通知效果

    这次我主要想总结一下微信小程序实现上下滚动消息提醒,主要是利用swiper组件来实现,swiper组件在小程序中是滑块视图容器. 我们通过vertical属性(默认为false,实现默认左右滚动)设置 ...

  6. 53. leetcode557. Reverse Words in a String III

    557. Reverse Words in a String III Given a string, you need to reverse the order of characters in ea ...

  7. 求m区间内的最小值

    洛谷P1440 求m区间内的最小值 ............................................................................... 以上 ...

  8. 读书笔记(一)—— 浅析浏览器渲染过程和html中的文件加载

    在构建页面时,我们会在html中载入一个或多个css和js文件.或许大家都已经习惯了"最佳实践"中,css文件应该放在<head>标签中引入,而js文件则是放在< ...

  9. cornerstone 使用报错 working copy ... is too old(format 10 created by subversion 1.6)

    1.....本来正常使用的cornerstone 突然出现这个问题 图片如下 2....解决方案,,,,也搜集了方法,,但是最后竟然就这样解决了,,完全搞不懂的解决方案啊 如图 3......如有错误 ...

  10. Gitlab CI 自动部署 asp.net core web api 到Docker容器

    为什么要写这个? 在一个系统长大的过程中会经历不断重构升级来满足商业的需求,而一个严谨的商业系统需要高效.稳定.可扩展,有时候还不得不考虑成本的问题.我希望能找到比较完整的开源解决方案来解决持续集成. ...