VS2022 远程调式

背景:

1,不能考代码到目标设备调式;

2,出于保密,代码不能拷到目标设备;

解决方案:

使用远程调式的方式,代码放在自己电脑,debug 文件放在目标设备,使用VS自动远程调式工具进行调式。

方法如下:

  1. 给工控机设置电脑密码,记好用户名、密码;
  2. 找根网线,把电脑的IP(19168.12.55)和工控机的IP(19168.12.11)调在同一个网断;

3,把目标电脑设置一个文件夹,并把文件夹设置为共享;

4,把bin 文件夹拷到目标文件夹内,因为dll没有设置生成远程目录(可以设,但目录太多);

5.找到本机VS 安装目录,找到C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\Remote Debugger ,拷贝x64 x86文件夹到远程电脑

6,打开远程电脑的远程调试监视器,在第5X64x86 msvsmon.exe,启动好的界面如下:应用过程中有出现端口被占用的情况,如出现这种情况请选择另外的端口;

7,右键代码的工程文件,【属性】à【生成】,设置软件生成目录,把输出路径改成远程设备的路径。方法:点击浏览,在弹开的窗口中输入远程设备的IP,然后按回车就会弹出第3步设好的共享文件夹,选择好对应的目录;

设置好之后的效果如下图所示。

8,右键代码的工程文件,【属性】à【调式】,设置远程调式目录。A,自动操作选择【启动外部程序】可参考第7步中操作,选择远程设备的.exe文件;B,勾选【使用远程计算机】,并输入远程电脑的IP地址,这里输入192.168.12.11;

9,第一次启用的时候,需要用远程桌面登录远程设备,或者用VS自带的《身份验证》,如图:

10,本机启动调式,远程电脑远程对应界面

单击按钮,本机进入断点,设置远程代码调式完成;

 

11,如果不使用远程调式,需要把对应的生成路径和调式路径改回来;

12,注意:项目中使用库文件,如果库文件的生成目录没有设置成远程目录,每次生成新文件需要把对应的debug的文件拷到远程目录下。

### 设置和使用 VS Code 的远程调试 #### 安装 Remote Development 扩展包 为了能够在 VS Code 中实现远程开发,需要先安装名为 "Remote Development" 的扩展包。该扩展包包含了用于通过 SSH 或 Docker 等方式连接到远程机器的功能[^1]。 #### 配置 SSH 连接 一旦安装好上述插件集,可以通过以下方法建立与目标服务器的安全 Shell (SSH) 连接: - 使用命令面板 (`Ctrl+Shift+P`) 并搜索 `Remote-SSH: Connect to Host...` 来启动新的会话; - 如果之前未曾配置过特定主机,则可能还需要编辑 `.ssh/config` 文件来定义访问参数,比如用户名、IP 地址或域名以及端口号等信息; - 输入相应的认证凭证完成首次登录过程;对于后续操作,默认情况下将会自动处理身份验证流程[^4]。 #### 准备并部署 Visual Studio Code Server 组件 为了让客户端版本的 VS Code 能够顺利地同远端环境交互,需预先准备好适配于所选平台架构的服务端组件——即 vscode-server。这通常涉及以下几个步骤: - 访问官方提供的更新站点获取指定提交记录对应的二进制文件,例如针对 Linux x64 架构可采用如下 URL 模板:https://update.code.visualstudio.com/commit:${commit_id}/server-linux-x64/stable; - 将下载所得 tarball 解压至合适位置,并确保拥有执行权限; - 可能还需额外安装一些依赖项以满足正常运作需求[^2]。 #### 创建项目工作区并与之同步 成功建立了稳定的通信链路之后,下一步就是挑选要加载的工作目录作为当前项目的上下文范围。具体做法是在弹出的选择框中浏览定位到存放源码的位置,确认无误后按下 OK 键继续。此时 IDE 应能够实时反映任何更改动作,并允许用户像对待本地文件一样对其进行各种常规管理活动。 #### 启动调试会话 最后一步便是着手准备实际的调试环节了。一般而言,只需简单几步便可达成目的: - 编辑 launch.json 文件设定必要的断点条件及其他辅助选项; - 当一切就绪之时,按下 F5 即触发一次完整的编译构建序列直至进入等待状态; - 接下来依据实际情况选取合适的条目挂载到待测进程中去,从而获得细粒度控制权以便更深入探究内部逻辑行为模式[^3]。 ```json { // Use IntelliSense suggestions to learn about available options. "version": "0.2.0", "configurations": [ { "name": ".NET Core Attach", "type": "coreclr", "request": "attach", "processId": "${command:pickProcess}" } ] } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值