其实很多时候,远程调试的话,我还是更喜欢用WinDBG的,

首先,可以练习WinDBG的使用手段,

其次,可以增加WinDBG的熟练度,

最重要的,WinDBG在内核调试部分很常用,我也很喜欢它,所以我也经常用,

但是用多了会发现有个问题,就是,WinDBG建立普通的调试环境太慢了,

(不考虑dbgsrv和.server,因为在现有环境下,可以有更好的方法,这两种纯粹属于陌生环境下的无奈),

所以,想办法解决问题。

其实VS自带就有远程调试相关的功能,

而且设置步骤非常简单,

1:确认自己的开发机上,完整地安装了VS。(这是废话,VS不完整,怎么开发。)

2:使用Everything搜索一个叫做“msvsmon”的名字,这时会搜索出很多

3:如果安装了不同版本的IDE,会搜索出很多不同版本的msvsmon,寻找一个自己要使用的对应版本的msvsmon,我需要的就是VS12.0版本的,

找到目录,把目录里面两个文件夹都拷到目标机器中。

4:对应自己要调的程序位数以及目标操作系统位数,打开指定目录下的 msvsmon.exe

5:其实,什么都不用设置,这时服务端就可以用了。

6:VS的设置。

红色方框内部,选择远程调试,

远程命令写要调试的程序路径及名字,

远程命令参数就是命令行参数,

工作目录可以填写一个远程目录,

远程服务器名称,直接填写远程电脑的IP就好,

然后是比较重要的连接,这里使用默认的“带Windows身份验证的远程访问”就好,因为服务器端那边我们没有设置,服务器端也是默认的,而默认的也是这个选项。

其他部分可以不用修改。

7:大功告成。

可以F5了。

这里需要注意几点:

1:目标机器一定要有自己机器的软件环境,比如乱七八糟的RTL库,没有的话,可以现装。

2:一般来说只要是符号正确,基本上都没有问题,如果符号不匹配,看看是不是编译问题。

3:如果连不上,先看自己是不是IP写错了,因为服务端运行的时候,如果判断防火墙存在,那么它会请求添加防火墙,一般来说,防火墙出问题的可能性比较小,大多都是IP写错了。

VS系列远程调试的更多相关文章

  1. 微信公众号开发系列教程一(调试环境部署续:vs远程调试)

    http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...

  2. Visual Studio 调试系列12 远程调试部署在远程计算机IIS上的ASP.NET应用程序

    系列目录     [已更新最新开发文章,点击查看详细] 要调试已部署到IIS的ASP.NET应用程序,请在部署应用程序的计算机上安装并运行远程工具,然后从Visual Studio附加到正在运行的应用 ...

  3. Visual Studio 调试系列11 远程调试

    系列目录     [已更新最新开发文章,点击查看详细] 你可以调试已部署在另一台计算机的 Visual Studio 应用程序. 要进行此操作,可使用 Visual Studio 远程调试器. 01 ...

  4. 在Visual Studio上开发Node.js程序(2)——远程调试及发布到Azure

    [题外话] 上次介绍了VS上开发Node.js的插件Node.js Tools for Visual Studio(NTVS),其提供了非常方便的开发和调试功能,当然很多情况下由于平台限制等原因需要在 ...

  5. android webview远程调试

    H5的调试的方式一般用chrome的emulator就好,可是遇到APP就拙计了.这时候还得用远程调试,远程调试很给力,不过目前网上还没有好的文章讲解,要好好的把其配置下来还是非常有难度的,今天折腾了 ...

  6. IDEA第八章----远程调试

    大家有没有遇到相同分支的代码在本地就是没有问题的,但是到测试环境死活不能实现功能,且还不报错.通常我们的解决办法就是打日志,然后一点一点跟踪日志. 这时我们在想如果也可以按照本地一样能断点测试的程序就 ...

  7. tomcat如何正确的开启远程调试功能

    在日常开发中,有时需要对远程服务器上的应用进行远程调试,对于tomcat,要进行远程调试其实很简单,只需要在启动tomcat时开启jpda服务即可. 什么是JPDA呢? JPDA(JavaPlatfo ...

  8. 【Linux开发】CCS远程调试ARM,AM4378

    注意一点:CCS也是安装在Linux主机上的,不是安装在Windows上的,我在Windows上做出了很多尝试,但最终也不没明白究竟要用怎样的格式去执行在ARM-Linux应用程序,out文件ELF可 ...

  9. tomcat如何正确的开启远程调试功能(转)

    转自:http://blog.csdn.net/mhmyqn/article/details/49209541 版权声明:本文为博主原创文章,未经博主允许不得转载. 在日常开发中,有时需要对远程服务器 ...

随机推荐

  1. Oracle执行计划不走索引的原因总结

    在Oracle数据库操作中,为什么有时一个表的某个字段明明有索引,当观察一些语的执行计划确不走索引呢?如何解决呢?本文我们主要就介绍这部分内容,接下来就让我们一起来了解一下. 不走索引大体有以下几个原 ...

  2. CentOS7 部署单节点 FastDFS

    准备 环境 系统:CentOS7.5 软件即依赖 libfatscommon FastDFS分离出的一些公用函数包 FastDFS fastdfs-nginx-module FastDFS和nginx ...

  3. C#中的元组对象Tuple

    原文:C#中的元组对象Tuple 一.什么是元组 元组就是一些对象的集合,在我们编程时,比如一个人的信息,我们常常创建一个Person类去描述一个人,传统的做法如下: public class Per ...

  4. java全栈商业小程序开发

    此次开发只为学习和巩固,第一次学习开发 一.开发前需要了解: 开发框架MVVM.痛点.开源工具.VUE前端框架.微信支付模块.uni-app前端框架.小程序申请.开发工具下载.编写测试小程序.小程序结 ...

  5. Python中 将数据插入到Word模板并生成一份Word

    搬运出处: https://blog.csdn.net/DaShu0612/article/details/82912064

  6. vue之ref

    ref 被用来给元素或子组件注册引用信息.引用信息将会注册在父组件的 $refs 对象上.如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素:如果用在子组件上,引用就指向组件. 1.ref ...

  7. java中的final关键字的用法

    一. 什么是final关键字? final在Java中是一个保留的关键字,可以声明成员变量.方法.类以及本地变量.一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如果你试图将变 ...

  8. 计算机网络之IP地址与MAC地址

    IP地址 IP地址(Internet Protocol Address): 缩写为IP Adress,是一种在Internet上的给主机统一编址的地址格式,也称为网络协议(IP协议)地址. 它为互联网 ...

  9. 基于SpringBoot的花里胡哨配置

    花里胡哨的配置 记录一下流行框架的一些常用配置 lomback配置文件 <?xml version="1.0" encoding="UTF-8"?> ...

  10. 【版本】Spring Cloud 版本

    Spring Cloud 版本 Spring Cloud没有数字版本号,而是对应一个开发代号 Cloud代号 Boot版本(train) Boot版本(tested) lifecycle Angle ...