当前位置: 首页 > news >正文

C++(Qt)软件调试---将调试工具安装到AeDebug(11)

C++(Qt)软件调试—将调试工具安装到AeDebug(11)

文章目录

  • C++(Qt)软件调试---将调试工具安装到AeDebug(11)
    • 1、前言
      • 1.1 使用的调试工具
    • 2、调试器安装
      • 1.1 WinDbg
      • 1.2 procdump
      • 1.3 DrMinGW
      • 1.4 vsjitdebugger

更多精彩内容
👉个人内容分类汇总 👈
👉C++软件调试、异常定位 👈

1、前言

1.1 使用的调试工具

  • WinDbg
  • procdump
  • DrMinGW
  • vsjitdebugger

2、调试器安装

在本文中使用的都是64位调试器,如果需要使用32位调试器直接切换调试器就可以,使用方式是相同的。

1.1 WinDbg

  • 找到WinDbg路径;

    • C:\Program Files\Windows Kits\10\Debuggers\x64路径;
    • 或者使用Everything查找路径;
  • 使用管理员权限打开cmd,进入到WinDbg所在路径下;

    • cd C:\Program Files\Windows Kits\10\Debuggers\x64
  • 使用下列命令将WinDbg安装到AeDebug;

    • windbg.exe -I
  • 如下图所示就是权限不足安装失败,需要使用管理员权限打开cmd:

    在这里插入图片描述

  • 如下图所示就安装成功了:

    在这里插入图片描述

  • 打开注册表可发现64位AeDebug已经有WinDbg的指令了:

    在这里插入图片描述

  • 如图所示,在程序崩溃时会自动打开WinDbg进行调试:

    在这里插入图片描述

  • 使用WinDbg导出dump文件.dump /md E:\testCrash.dmp

    在这里插入图片描述

1.2 procdump

  • 下载procdump后,使用管理员权限打开cmd;

  • 使用下列命令安装procdump为事后调试器,在程序崩溃时自动在E:\dump文件夹下生成Full Dump文件;

    • D:\Procdump -ma -i E:\dump
  • 可使用下列命令卸载安装;

    • D:\Procdump -u
  • 如下图所示安装成功:

    在这里插入图片描述

  • 程序崩溃时自动生成dump文件:

    在这里插入图片描述

1.3 DrMinGW

  • 下载DrMinGW后,使用管理员权限打开cmd;

  • 使用下列命令安装drmingw为事后调试器,在程序崩溃时自动打开drmingw并定位到异常位置;

    • D:\drmingw\bin\drmingw.exe -i
  • 使用下列命令可用卸载安装:

    • D:\drmingw\bin\drmingw.exe -u
  • 安装成功如下图所示:

    在这里插入图片描述

  • 效果演示:

    在这里插入图片描述

1.4 vsjitdebugger

  • 打开Visual Studio;

  • 选择【调试】->【选项】->【调试】->【实时】,勾选三个复选框;

    在这里插入图片描述

  • 如果安装了其它事后调试器,会提示需要重启,直接重启就可以;

    在这里插入图片描述

  • Visual Studio重启后再次选择【调试】->【选项】->【调试】->【实时】,勾选三个复选框;

  • 打开注册表,查看AeDebug,可看出已经更新为使用vsjitdebugger进行调试了;

    在这里插入图片描述

  • 效果演示:

    在这里插入图片描述

  • 使用vsjitdebugger导出dump文件;

    • 选择【调试】->【将转储另存为】;

    在这里插入图片描述

http://www.lryc.cn/news/124651.html

相关文章:

  • 浅谈限流式保护器在住宅电气防火的应用
  • ChatGPT助力ModStartBlog,博客写作更智能
  • Jpa与Druid线程池及Spring Boot整合(二): spring-boot-starter-data-jpa 踏坑异常处理方案
  • Vue3组件库
  • AUTOSAR从入门到精通-【应用篇】基于 CAN/LIN 总线的智能配电监控系统的研究设计
  • 数据安全服务能力评定资格证书-申请流程
  • 用js快速生成一个简单的css原子库 例如: .mr-18 .pl-18
  • Java鹰眼轨迹服务 轻骑小程序 运动健康与社交案例
  • 【产品经理】微信小程序隐私保护指引
  • springboot创建websocket服务端
  • 网络安全攻防实战:探索互联网发展史
  • pwm接喇叭搞整点报时[keyestudio的8002模块]
  • 配置listener tcps加密 enable SSL encryption for Oracle SQL*Net
  • 【Sklearn】基于逻辑回归算法的数据分类预测(Excel可直接替换数据)
  • 自然数的拆分问题
  • du -mh命令
  • MySQL 8 group by 报错 this is incompatible with sql_mode=only_full_group_by
  • Mongodb (四十一)
  • 16 dlsys GAN
  • css3-flex布局:基础使用 / Flexbox布局
  • MYSQL-习题掌握
  • Python-迭代
  • 【论文阅读】DEPCOMM:用于攻击调查的系统审核日志的图摘要(SP-2022)
  • 大语言模型之一 Attention is all you need ---Transformer
  • 数字鸿沟,让气候脆弱者更脆弱
  • Tomcat 部署优化
  • Django框架-使用celery(一):django使用celery的通用配置,不受版本影响
  • nvue语法与vue的部分区别
  • Java 开发工具 IntelliJ IDEA
  • 将vsCode 打开的多个文件分行(栏)排列,实现全部显示,便于切换文件