Visual Studio 远程调试步骤

在工作中有时候需要在服务器的环境下远程调试,例如调试微信相关服务的时候。

1. 下载远程调试工具

网址:https://visualstudio.microsoft.com/zh-hans/downloads/

image-20211123113406587

下载后直接安装至完成。

image-20211123134555301

启动Remote Debugger:

image-20211123135010141

如果只是短时间测试,可以选择无身份验证,为了安全,工具自动设置了空闲时间,即多久没有操作会自动关闭此功能。

2.新建测试项目

建了一个简单的HelloWorld项目,简单几句代码,加上断点。

image-20211123154148114

发布debug到远程服务器。

双击HelloWorld.exe,运行程序

image-20211123160002467

3.开始调试

点击菜单【调试】->【附加到进程】,打开如下页面

image-20211123154441513

① 选择连接类型

如果开启了身份验证,则默认即可,否则选择【无身份验证】。

② 填写服务器的IP及调试服务的端口

填写完后直接回车,不要点击后面的【查找】按钮。在可用进程中会列出服务器端的进程列表。

③筛选进程

可选,如果服务器端进程较多,可以在此筛选,支持模糊查询。

找到HelloWorld.exe,双击改进程或点击附加按钮,和附加本地进程一致。

随便输入什么字符,回车,可以看到进入了断点

image-20211123160412360

可以正常进行调试了。

4. 调试IIS中的网站

如果是调试发布到IIS中的网站,则需要附加的进程为w3wp.exe。

可能会遇到如下情况:

如果看不到该进程,则需考虑如下操作,①访问该网站,休眠状态有时候找不到该进程。②勾选“显示所有用户的进程”,再刷新。

如果看到多个w3wp.exe,这是在IIS中部署了多个网站,不知道该附加到哪个上面,可以以管理员权限运行 cmd,执行如下命令:

cd %windir%\system32\inetsrv

appcmd list wp

在执行结果中可以看到网站的名称和对应的进程ID,在附加进程的时候根据进程ID区分。

 一、概要大概在今年三月份的时候突然被紧急调到另外一个项目组解决线上内存异常问题。经过两周的玩命奋战终于解决了这个问题这里把心路历程及思路分享给大家。希望可以帮助到各位或现在正遇到这样事情的小伙伴 ...