MSVC++远程调试

1. 介绍

MSVC++的调试功能非常强大,可以下断点,单步调试,查看堆栈变量信息等。实际用于生产的电脑环境复杂,更容易发生Bug。生产电脑,由于各种原因有些可能无法安装MSVC用来现场调试。基于打印日志,查看日志的方式来分析,一些简单的问题可以解决,但是一些复杂的问题,尤其是语法问题,还是在线调试更方便。
针对上述情形,跨电脑的远程调试就出现了,完美解决上述问题。远程调试,一台生产电脑,一台开发电脑,共同接入一个局域网。开发电脑远程连接生产电脑,然后就像调试本地程序一样调试运行于生产电脑上的程序。

2. 远程调试

2.1. 生产电脑

  1. 将开发电脑上的Remote Debugger目录拷贝到生产电脑。
    在这里插入图片描述

  2. 根据程序的类型x64/x86打开相应的目录,并打开生产电脑目录下的msvsmon.exe。

  3. 配置msvsmon.exe的Tools->Options。4015是默认的端口号,一般不建议修改。
    在这里插入图片描述

  4. 获取生产电脑的IP,局域网网络通信,可以使用计算机名:端口号的方式,也可以使用IP:端口号的方法。但是在访问跨网关的局域网电脑时,计算机名可能无法解析出对应的IP地址,导致访问失败,所以更推荐IP:端口号的访问方式。

  5. 从开发电脑上将待调试二进制可执行文件拷贝到生产电脑任意目录,不需要附带pdb文件。

2.2. 开发电脑

MSVC++的本地调试分为启动调试和附加调试。远程调试也同样分为启动调试和附加调试。
开始远程调试之前,先使用telnet ip地址 端口号测试网络连接。

2.2.1. 启动调试

  1. 启动工程->Properties->Debugging
    在这里插入图片描述

  2. 开始调试
    下断点,按F5开始调试,和本地调试一样。
    查看符号文件载入信息,Information中第一行是生产电脑上的可执行文件的当前目录,第二行是可执行文件exe中记录的相应的PDB文件路径,也即开发电脑上的PDB文件默认路径。两个PDB路径,只要有一个匹配即可。
    在这里插入图片描述

2.2.2. 附加调试

  1. 在生产电脑上启动待调试的可执行文件。

  2. 打开MSVC++工程,从菜单启动Debug->Attach to Process
    Qualifier中推荐IP:端口,4015是默认端口号,可以省略。待Available Processes中出现待测试的远程进程,选中进程,然后点击Attach进入调试。
    在这里插入图片描述

  3. 下断点开始调试。

3. 外网远程调试

有时间,生产电脑在外地,出差过去现场调试,成本太高。用于局域网的远程调试是否可以用于广域网呢?此时可以使用VPN隧道技术,让广域网访问和局域网访问效果一样,直接可以访问指定电脑的局域网IP。VPN软件,有商用的,也有免费试用的,如TeamViewer就支持VPN访问,在安装TeamViewer时设置高级配置时勾选安装VPN。

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MSVC2017和OSG3.6是两个不同的软件工具,分别用于不同的用途。 MSVC2017(Microsoft Visual C++ 2017)是一款由微软公司开发的集成开发环境(IDE),主要用于开发基于C++语言的应用程序。它提供了强大的工具和功能,如代码编辑器、调试器、编译器等,可以帮助开发人员快速高效地创建C++程序。MSVC2017对于C++11和C++14标准的支持非常好,还提供了一系列优化和调试工具,使得开发者能够轻松地编写出高效稳定的C++程序。 OSG3.6(OpenSceneGraph 3.6)是一个跨平台的开源高性能3D图形工具包。它提供了一系列用于渲染、视觉化和交互的API,可以用于开发各种类型的三维图形应用程序,如虚拟现实、游戏、模拟、可视化等。OSG3.6基于C++语言开发,并且可以与其他常用工具和框架(如OpenGL、Qt等)进行整合,提供了丰富的功能和灵活的扩展性。它还具有良好的性能和稳定性,使得开发者能够快速地创建出高质量的三维图形应用。 使用MSVC2017和OSG3.6可以实现结合开发,即在MSVC2017的开发环境中使用OSG3.6来创建三维图形应用程序。通过MSVC2017的调试器和编译器,开发者可以轻松地调试和编译基于OSG3.6的程序,并利用OSG3.6提供的功能和API来实现各种三维图形效果。这种结合可以使得开发者更加方便地进行三维图形开发,并且享受到OSG3.6和MSVC2017的强大功能和优势。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值