.Net 远程调试

Posted One To One

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.Net 远程调试相关的知识,希望对你有一定的参考价值。

一、前言:

 在日常开发过程中,无法避免调试代码的情况;那么当程序运行在远程电脑时,那么如何进行调试呢?

 接下来分别对各种常见的平台进行远程调试。

二、各平台实现远程调试:

  • Windows:

   windows远程调试通过安装远程调试工具:

   1、下载、安装远程调试工具:

    下载:各版本远程调试工具

    安装:

     

   2、在远程电脑运行远程工具,效果如下

     

   3、Vs中调试:附加到进程->查找->选择对应机器->输入对应账号密码->选择对应调试进程

    

    选择附加对应进程,就可以在本机调试远程电脑的程序代码。

  • Linux*:

   在Linux中通过 SSH 附加到在本地或远程 Linux 部署上运行的 .NET Core 进程。

   A、Linux环境准备:

    1、Linux安装.Net 环境 :安装.Net 

    2、在Linux环境中安装openssh服务  

sudo apt-get install openssh-server unzip curl

   B、Vs设置:

    1、设置远程Linux系统连接信息,工具->选项->跨平台

     

     2、VS调试:调试->附加到进程,按照以下设置附加进程:

     

    3、附加后,Vs会等待一段时间后提示(由于国内下载依赖包失败可能附加失败)

     在此过程中:vs在远程系统中创建了目录:/root/.vs-debugger/

     如出现等待时间较长,则手动下载vsdbg-linux-x64.tar.gz文件放到/root/.vs-debugger/目录下;则重新附加就可以正常调试。

     如下图:

     

三、常见问题:

 1、调试时,未进入断点:

  解决办法:确定调试目录的pdb文件,是否是最新。

 2、附加Linux系统中进程一直卡死,最后错误提示:

  解决办法:Linux下载vsdbg-linux-x64.tar.gz文件到/root/.vs-debugger/ 目录下,再进行附加进程

以上是关于.Net 远程调试的主要内容,如果未能解决你的问题,请参考以下文章

从 Visual Studio 进行 Linux .NET 远程调试

.Net用VS 2012远程调试Win2003网站

远程调试asp.net

无法调试 .Net 代码。无法附加到进程。 SQL CLR 远程调试

.NET 作为来自另一个域的另一个用户进行远程调试?

远程部署/调试 Visual Studio 2017 .NET Core