VS2008远程调试操作方法
前言
最近遇到一个问题:组态王在本地调试机上运行正常,但在远程测试机上运行却出现了崩溃。本机上装有Visual Studio 2008,测试机上则没有。于是,在网上找资料,想利用远程调试方法,在本机上调试测试机出现的软件崩溃问题。
基本概念
1、 目标机:
远程需要调试的机子,也就是被调试程序exe所在的机子,VS2008可装可不装。
2、 调试机:
安装VS2008的机子,就是存放代码设断点调试的机子,须装VS2008。
远程调试配置
目标机配置:
如果目标机安装了VS2008则直接在【开始菜单】->【Microsoft Visual Studio2008】->【VisualStudio Tools】下面找到Visual Studio 2008 Remote Debugger运行即可;

如果目标机没有安装VS2008则需要将调试机上VS2008安装目录下相应的远程debug工具(路径:C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe)拷贝到目标机应用程序所在的目录下,然后运行。

注意:此处要根据你的程序是32位或者64位选择不同的版本,如果是在Win7下面还要以管理员身份运行。如果是第一次运行可能需要设置防火墙,请允许防火墙放行,具体设置方法请自行百度。
运行后,选择【Tools】->【Options】设置Debugger参数如下:

此处设置无身份验证模式(No Authentication),并且允许任何用户进行调试,端口默认为4015,最大空闲时间为900秒。确定后,(如下图所示)目标机的设置就基本完成了~

调试机配置:
打开VS2008,打开要调试工程的属性,在Debugging选项页内,做如下设置:

其中,Remote Command 中的路径为目标机上要调试的exe的绝对路径;Remote Server Name为目标机的IP地址(与调试机在局域网同一网段);Connection和Debugger Type与目标机的设置保持一致。
设置完成后按F5即可远程调试目标机程序,此时目标机调试器输出此时建立的远程调试连接,如下图所示:

需要注意的几个地方:
1、调试机和被调试机都在一个局域网内,且必须在一个网段
2、调试机和被调试机必须登录相同的用户,用户名必须一直关闭防火墙或打开相应的端口,一般是4015。
3、 确保目标机上要调试的exe程序与调试机保持一致,否则导致无法设置断点,PDB不一致。
VS2008远程调试操作方法的更多相关文章
- VS2008远程调试
环境: 同一局域网内,主机和虚拟机远程调试 远程计算机:虚拟机搭的WindowsXP/32(局域网中使用桥接,非局域网使用NAT) 本地计算机:Windows XP.Win71. ...
- VS2008远程调试方法
在网上找了好多资料才把这个调试环境搭好,下面总结一下: 先说明两个概念: 1. 目标机:远程需要调试的机子,也就是被调试程序exe所在的机子,该机子可以安装VS2008或者不安装vs2008 ...
- VS2008 远程调试器未成功安装,没法使用?
Win7 64位系统,安装VS2008后,想使用远程调试功能,结果不能使用! 在VS2008的安装包下有个 Remote Debugger 的文件夹,在里面找到 x64 的 rdbgsetup.exe ...
- VC++6.0远程调试(亲试成功)
0 前言 VS2008及以上远程调试上篇已经讲过,这里再讲下VC++6.0开发环境下的远程调试能力,仅需下面4步即可,更方便的就接着后面的5-6步. 因为目标程序需要在有采集卡等相关硬件支持下的工控机 ...
- 微信公众号开发之VS远程调试
目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 前言 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流 ...
- tomcat开发远程调试端口以及利用eclipse进行远程调试
一.tomcat开发远程调试端口 方法1 WIN系统 在catalina.bat里: SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compi ...
- Visual Studio 2012远程调试中遇到的问题
有的时候开发环境没问题的代码在生产环境中会某些开发环境无法重现的问题,或者需要对生产环境代码进行远程调试该怎么办? Vs已经提供给开发者远程调试的工具 下面简单讲讲该怎么用,前期准备:1.本地登录账户 ...
- 使用Eclipse进行远程调试
转自:http://blog.csdn.net/sunyujia/article/details/2614614 今天决定做件有意义的事,写篇图文并茂的blog,为什么要图文并茂?因为很多事可能用语言 ...
- 微信公众号开发系列教程一(调试环境部署续:vs远程调试)
http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...
随机推荐
- Python标准库:内置函数getattr(object, name[, default])
本函数实现获取对象object的属性.属性由name来表示,就是属性名称的字符串.參数default是可选的參数,当获取对象的属性不存在时,就返回此值.假设没有提供此參数.同一时候在对象属性里也找不到 ...
- Java高级面试题积累(二)
简述23种设计 抽象工厂模式(Abstract Factory):提供一个创建一系列相关或相互依赖对象的接口.而无需指定它们详细的类. 适配器模式(Adapter):将一个类的接口转换成客户希望的另外 ...
- 设置PDF文件默认缩放比例
- cocos2d-x笔记-CCGLProgram
引擎提供了CCGLProgram类来处理着色器相关操作,对当前绘图程序进行了封装,其中使用频率最高的应该是获取着色器程序的接口: const GLuint getProgram(); 该接口返回了当前 ...
- MySQL通过视图(或临时表)实现动态SQL(游标)
>参考de优秀文章 写MySQL存储过程实现动态执行SQL Dynamic cursor in stored procedure MySQL通过视图(或临时表)实现动态SQL(游标). 因在实现 ...
- jquery ajax中success与complete的执行顺序 (转)
http://blog.sina.com.cn/s/blog_4adc4b090101dhnh.html https://q.cnblogs.com/q/21810/ **************** ...
- registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
问题是tomcat的版本问题,tomcat新检测机制导致的这个问题,换版本可以解决问题,但不建议这么做,租用服务器不是你说换就换的.其实问题根源是BasicDataSource,BasicDataSo ...
- vim同时打开多个文件进行编辑
在A文件中用:tabedit B 就打开了B文件,然后用gt来切换进入A 或B文件中: 如果打开多个,就用 1gt ,2gt来切换至不同的文件:返回上一个文件用gT
- kubernetes deployment
deployment是k8s中部署应用最常见的一种方式.如果不需要被访问,那么只需要定义deployment即可.如果需要被其他服务访问,那么可以创建一个service与其绑定,通过访问service ...
- Apache HttpComponents 多线程处理HTTP请求
/* * ==================================================================== * * Licensed to the Apache ...