远程调试是需要又在不同位置上的调试器。执行真正调试称为调试服务器,另外一个,被称为调试客户端。调试客户端,控制着一个与远程调试器相应的是会话。有2种方式:直接使用windbg进行远程连接,使用cmd命令行。

注意:

pdb文件一定放置在服务器上面,在客户端的windbg里设置的符号文件路径也一定设置服务器的路径,否则在客户端的调试器中会出现无法打开路径的警告。

使用Windbg进行远程调试

服务端

1.在服务端当正常普通的情况下,使用Windbg运行可执行exe,像正常调试检测一样,可以执行到dmp文件。

2.在Debugger Command Window中,输入如下命令(5005为任意选择的端口作为实例):

.server tcp:port=5005

3.WinDbg将返回如下内容:

Server started.  Client can connect with any of these command lines
0: <debugger> -remote tcp:Port=5005,Server=YourHostComputer

客户端:

在客户端计算机上,打开WinDbg,选择File菜单中的Connect to Remote Session。

6.在Connection String下面, 输入下面的字符串

tcp:Port=5005,Server=YourHostComputer

YourHostComputer的地方可以是你运行调试服务器计算机的名字,或者是IP.

在服务器和客户端的Command Window 都显示连接成功,这时候就可以在客户端输入执行的命令。

使用命令行

使用 -server 参数可以使WinDBG 以服务器方式启动。 WinDBG可以用多种连接协议让客户端连接,比如命名管道(named pipe), 安全管道(secure pipe), TCP 协议(socket), SSL 协议, 串口/并口(COM port) 等等。

服务端

命名管道

WinDBG.exe -server npipe:pipe=PipeName[,hidden][,password=Password][,IcfEnable] [-noio] [Options]

TCP 协议

WinDBG.exe -server tcp:port=Socket[,hidden][,password=Password][,ipversion=6][,IcfEnable] [-noio] [Options] WinDBG.exe -server tcp:port=Socket,clicon=Client[,password=Password][,ipversion=6] [-noio] [Options]

串口/并口

WinDBG.exe -server com:port=COMPort,baud=BaudRate,channel=COMChannel[,hidden],password=Password] [-noio] [Options]

安全管道

WinDBG.exe -server spipe:proto=Protocol,certuser=Cert|machuser=Cert},pipe=PipeName[,hidden],password=Password] [-noio] [Options]

SSL 协议

WinDBG.exe -server ssl:proto=Protocol,certuser=Cert|machuser=Cert},port=Socket[,hidden],password=Password] [-noio] [Options] WinDBG.exe -server ssl:proto=Protocol,certuser=Cert|machuser=Cert},port=Socket,clicon=Client[,password=Password] [-noio] [Options]

客户端

命名管道
WinDBG.exe -remote npipe:server=Server,pipe=PipeName[,password=Password]

TCP 协议
WinDBG.exe -remote tcp:server=Server,port=Socket[,password=Password][,ipversion=6]
WinDBG.exe -remote tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6]

串口/并口
WinDBG.exe -remote com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password]

安全管道
WinDBG.exe -remote spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password]

SSL 协议
WinDBG.exe -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password]
WinDBG.exe -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password]

服务端

1)、运行cmd.exe

2)、进入windbg的安装目录

3)、运行以下命令

(1)、windbg –server tcp:port=5005 F:\test\stdtest\sdk\release\MFCtest.exe    //后面的是可执行程序

客户端:

1)、运行cmd.exe

2)、进入windbg的安装目录

3)、运行以下命令

windbg –remote tcp:port=5005,server=192.168.33.11  //服务主机的ip

需要设置一下环境,有2种办法:

1.在cmd 中,跳转目录到 windbg.exe 的安装目录,使用cd 绝对路径

2.在环境变量的系统变量path 加上 windbg.exe 的安装目录。

windbg远程调试方法相关推荐

  1. 西门子S7-1200PLC远程调试方法

    西门子S7-1200PLC远程调试方法 作为自控工程师出差调试项目,远程电话技术支持是家常便饭,公司因为一点小问题就派工程师出差现场解决问题,成本高让老板也很头疼,服务得不好还容易引起与客户的矛盾,物 ...

  2. java远程调试_JAVA的远程调试方法

    首先,JAVA自身支持调试功能,并提供了一个简单的调试工具--JDB,类似于功能强大的GDB,JDB也是一个字符界面的调试环境,并支持设置断点,支持线程线级的调试. JAVA的调试方法如下: 1.首先 ...

  3. linux java远程调试_[转]JPDA:Java平台调试架构(常用的远程调试方法)

    原文出处:http://www.javaeye.com/topic/75128 最近使用WTP的Server功能很不爽,连tomcat服务器时java类中的任何改动都要重启服务器,一怒之下就改用JPD ...

  4. SOM-TL138F基于GDB和GDBServer的远程调试方法

    1前言 表 1 开发板型号 是否支持本实验 TL437x-EVM 支持 TL437x-EasyEVM 支持 TL437x-IDK 支持 TL437xF-EVM 支持 操作环境: Ubuntu 14. ...

  5. WinDbg 本地调试和远程调试相关内容

    文 1 实现WinDbg本地调试 文 2,3实现WinDbg远程调试App ============================================================== ...

  6. Visual Studio 2012/2010/2008 远程调试

    远程调试应用场景 部署环境:ASP.NET(C#)+IIS+Win7 64 bit 很多公司的开发模式都是将开发机器和服务器分开,也就是开发一台机,服务器一台机.而测试人员会在服务器上录入测试数据,此 ...

  7. pycharm 远程调试图文_Pycharm配置远程调试的图文步骤

    Pycharm配置远程调试方法总结 动机 一些bug由于本地环境和线上环境的不一致可能导致本地无法复现 本地依赖和线上依赖版本不一致也可以导致一些问题 有时一些bug跟数据相关,本地数据无法和线上数据 ...

  8. 用GDB Server进行远程调试

    某些时候由于模拟环境的限制,调试必须要在目标板上进行.由于嵌入式系统资源比较有限,一般不能在目标板上直接构建GDB的调试环境,这时我们通常采用gdb+gdbserver的远程调试方法:gdbserve ...

  9. (十)Intellij 远程调试 a bug

    接上篇文章:http://blog.csdn.net/lovesummerforever/article/details/50327445 经常使用第一种远程调试方法,也就是不改动任何的配置文件,使用 ...

  10. eclipse gdb gdbserver 远程调试

    https://blog.csdn.net/linuxarmsummary/article/details/44975495 我们在 Linux 主机中搭建我们的开发环境,使用 Ubuntu 10.0 ...

最新文章

  1. OSI中端到端与点到点区别。
  2. python学习第十节(yield表达式的应用+内置函数)
  3. android的NDK和java进行本地socket通信
  4. check box 如何调整字体大小_CSS中关于box-sizing你可能需要知道的小知识
  5. springboot集成mybatis源码分析-启动加载mybatis过程(二)
  6. Jzoj4840 小W砍大树
  7. 最近公共祖先_LCA 最近公共祖先
  8. Requests库实战(四)---爬取肯德基餐厅地址信息
  9. SVG(可扩展矢量图)系列教程
  10. markdownpad2下载安装教程
  11. SecureCRT快捷键大全
  12. 台式电脑怎么装win10 win11重装win10系统
  13. Python 基于豆瓣电影的可视化分析系统
  14. 28岁华为员工工资表曝光,牛逼的人注定会牛逼
  15. 【前端技术】一篇文章搞掂:WeX5
  16. 【Python零基础到入门】Python基础语法篇——数字(Number) 学习 【文末送书】
  17. 人工智能时代的自我修炼之-有效沟通
  18. Java工程师 Java基础面试题JVM(Day12)
  19. 安卓 Installation via USB is disabled
  20. 设计模式(三)代理设计模式

热门文章

  1. Assigning retained object to weak property object will be released after assignment
  2. 【ES】学习2-搜索
  3. Android库和项目收集-图片
  4. 使用express重构博客项目
  5. RabbitMQ的六种工作模式(三)
  6. 频繁模式挖掘apriori算法介绍及Java实现
  7. 贪吃蛇c语言判断没有输入,贪吃蛇问题
  8. 古代埃及希腊,数学用的什么进制
  9. (已解决)MAC JAVA错误:Cocoa AWT: Not running on AppKit thread 0 when expected
  10. SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“.