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

C++(Qt)软件调试---自动注册AeDebug(17)

C++(Qt)软件调试—自动注册AeDebug(17)

文章目录

  • C++(Qt)软件调试---自动注册AeDebug(17)
    • 1、什么是AeDebug
    • 2、使用调试工具
    • 3、WinDbg注册到AeDebug
    • 4、ProcDump注册到AeDebug
    • 5、Dr.MinGW注册到AeDebug
    • 6、Visual Studio 注册到AeDebug

1、什么是AeDebug

AeDebug是Windows操作系统自带的一个调试工具,用于帮助开发人员进行应用程序的调试和错误定位。

当应用程序发生异常或崩溃时,AeDebug可以自动启动调试器,并为开发人员提供相关的错误信息和调试信息,以帮助开发人员快速定位和解决问题。

在Windows操作系统中,可以使用注册表编辑器来修改AeDebug的设置

AeDebug通常用于以下方面:

调试应用程序:AeDebug可以帮助开发人员快速定位应用程序的错误和问题,并进行调试和修复。
分析应用程序崩溃:AeDebug可以捕获应用程序的崩溃信息,并为开发人员提供相关的调试信息和错误信息,以帮助开发人员分析崩溃原因。
跟踪应用程序运行:AeDebug可以帮助开发人员跟踪应用程序的运行状态,并记录相关的调试信息和错误信息。
总之,AeDebug是一个非常有用的调试工具,可以帮助开发人员快速定位和解决应用程序的错误和问题。

如果您是Windows应用程序的开发人员,建议您掌握AeDebug工具的使用方法,以便更好地进行应用程序的调试和错误定位。

  • 在之前的文章中讲了什么是AeDebug,为什么要用AeDebug和怎么手动修改AeDebug,但是手动修改比较麻烦,基本上支持AeDebug的调试器都可以支持自动注册,这次会统一讲解。

2、使用调试工具

本文中使用到的调试工具如下:

  • WinDbg
  • ProcDump
  • Dr.MinGW
  • vsjitdebugger.exe(Visual Studio )

3、WinDbg注册到AeDebug

  • 找到自己的WinDbg;(如果不知道在哪可以使用Everything搜索,最新版本叫WinDbgX)

    在这里插入图片描述

  • 找到并复制路径;(这里我使用的是最新版的演示,所以路径为C:\Users\MHF\AppData\Local\Microsoft\WindowsApps

  • 使用管理员模式打开cmd;

  • 使用cd 命令进入到WinDbg所在路径;

  • 输入命令WinDbgX.exe -I,然后回车将WinDbg注册到AeDebug;

  • 弹出WinDbg窗口如下就注册成功了;

    在这里插入图片描述

  • 然后随便创建一个Qt工程,编写一段空指针代码,使用MSVC编译器编译运行;(MinGw不支持)

    在这里插入图片描述

  • 当程序崩溃后就会自动触发AeDebug,打开WinDbg,如图所示;

    在这里插入图片描述

  • 然后鼠标点击出现问题的堆栈就可以定位到异常位置;

    在这里插入图片描述

4、ProcDump注册到AeDebug

  • 下载ProcDump;
  • 使用管理员打开cmd;
  • 进入到procDump所在路径;
  • 使用命令procdump -ma -i E:\dumps可以安装ProcDump作为(AeDebug)后期调试程序,在程序崩溃是将生成的Dump文件全部放到E:\dumps文件夹下;(并不会想WinDbg一样弹出调试窗口)

5、Dr.MinGW注册到AeDebug

  • 下载Dr.MinGW;
  • 使用管理员打开cmd;
  • 进入到Dr.MinGW所在路径;
  • 使用命令drmingw -i 将dr.MinGw注册到AeDebug,在程序崩溃时会自动弹出堆栈状态显示窗口;
  • 注意:Dr.MinGW支持显示MinGW编译器和MSVC编译器编译的程序堆栈,并且只是显示堆栈,功能简单容易上手,不想WinDbg那样复杂。

6、Visual Studio 注册到AeDebug

  • 打开Visual Studio ;

  • 点击【调试】->【选项】->【实时】;

    在这里插入图片描述

  • 勾选【本机】,点击【确定】,有时候会提示需要重启Visual Studio ;

在这里插入图片描述

  • 在重启Visual Studio 后重新打开,然后勾选【本机】,再点击【确定】就完成注册到AeDebug了;

{__/}
(̷ ̷´̷ ̷^̷ ̷`̷)̷◞~❤
| ⫘ |

相关文章:

C++(Qt)软件调试---自动注册AeDebug(17)

C(Qt)软件调试—自动注册AeDebug(17) 文章目录 C(Qt)软件调试---自动注册AeDebug(17)1、什么是AeDebug2、使用调试工具3、WinDbg注册到AeDebug4、ProcDump注册到AeDebug5、Dr.MinGW注册到AeDebug6、Visual Studio 注册到AeDebug 1…...

云原生周刊:Gateway API 1.0.0 发布 | 2023.11.6

开源项目推荐 Kueue Kueue 是一套用于作业队列的 API 和控制器。它是作业级管理器,可决定何时允许作业启动(如创建 pod),何时停止作业(如删除活动 pod)。 Reloader 一个 Kubernetes 控制器,…...

Java2 - 数据结构

5 数据类型 5.1 整数类型 在Java中,数据类型用于定义变量或表达式可以存储的数据的类型。Java的数据类型可分为两大类:基本数据类型和引用数据类型。 byte,字节 【1字节】表示范围:-128 ~ 127 即:-2^7 ~ 2^7 -1 sho…...

精解括号匹配问题与极致栈设计:揭开最大栈和最小栈的奥秘

目录 括号匹配问题最小栈最大栈 最大栈和最小栈是极致栈的两个重要变种。最大栈用于存储当前匹配的最大值,而最小栈用于存储当前匹配的最小值。 括号匹配问题 这个问题我们来看力扣20题的描述: 给定一个只包括 ‘(’,‘)’,‘{’…...

云存储/视频监控管理平台EasyCVR,使用sqlite数据库出现卡顿该如何优化?

视频集中存储/云存储/视频监控管理平台EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,实现视频资源的鉴权管理、按需调阅、全网分发、智能分析等。AI智能大数据视频分析EasyCVR平台已经广泛应用在工地、工厂、园区、楼…...

实战!工作中常用的设计模式

文章目录 前言一、策略模式1.1、 业务场景1.2 、策略模式定义1.3、 策略模式使用1.3.1、一个接口,两个方法1.3.2、不同策略的差异化实现1.3.3、使用策略模式 二、责任链模式2.1、业务场景2.2、责任链模式定义2.3、责任链模式使用2.3.1、一个接口或者抽象类2.3.2、每…...

MySQL进阶_1.逻辑架构和SQL执行流程

文章目录 第一节、逻辑架构剖析1.1、服务器处理客户端请求1.2、Connectors1.3、第1层:连接层1.4、第2层:服务层1.5、 第3层:引擎层1.6、 存储层1.7、小结 第二节、SQL执行流程2.1、查询缓存2.2、解析器2.3、优化器2.4、执行器 第三节、数据库…...

基于GCC的工具objdump实现反汇编

一:objdump介绍 在 Linux中,一切皆文件。 Linux 编程实际上是编写处理各种文件的代码。系统由许多类型的文件组成,但目标文件具有一种特殊的设计,提供了灵活和多样的用途。 目标文件是包含带有附加地址和值的助记符号的路线图。这…...

排序算法的空间复杂度和时间复杂度

一、排序算法的时间复杂度和空间复杂度 排序算法 平均时间复杂度 最坏时间复杂度 最好时间复杂度 空间复杂度 稳定性 冒泡排序 O(n) O(n) O(n) O(1) 稳定 直接选择排序 O(n) O(n) O(n) O(1) 不稳定 直接插入排序 O(n) O(n) O(n) O(1) 稳定 快速排序 O(n…...

【电路笔记】-基尔霍夫电路定律

基尔霍夫电路定律 文章目录 基尔霍夫电路定律1、框架和定义2、基尔霍夫电流定律3、基尔霍夫电压定律4、基尔霍夫定律应用5、基尔霍夫定律的局限性6、总结 在本文中,将介绍最基本、最重要的电路定律之一。 这些法律由德国医生古斯塔夫基尔霍夫 (Gustav Kirchoff) 于 …...

从零开始搭建React+TypeScript+webpack开发环境-基于axios的Ajax请求工具

什么是axios axios是一款基于Promise的HTTP客户端,适用于浏览器和Node.js环境。它的特点包括: 支持浏览器和Node.js环境。支持Promise API。支持拦截请求和响应。支持取消请求。自动转换JSON数据。支持CSRF保护。 使用axios可以更方便地发送HTTP请求&…...

【uniapp小程序下载】调用uni.uploadfile方法在调试工具里是没有问题的,但是线上版本和体验版就调用不成功,真机调试也没问题

把你的下载地址前缀添加到合法域名就解决了 在调试工具里成功了是因为勾选了下面这项 下面是我的下载并打开函数 methods: {// 下载downloadFileFn(data) {if (this.detailsObj.currentUserBuy) {uni.downloadFile({// data是路径url: https:// data,success(res) {//保存到本…...

chatGLM中GLM设计思路

GLM是结合了MLM和CLM的一种预训练方式,其中G为general;在GLM中,它不在以某个token为粒度,而是一个span(多个token),这些span之间使用自编码方式,而在span内部的token使用自回归的方式…...

卡牌游戏类型定制开发微信卡牌小程序游戏

卡牌类型的游戏开发具有一些独特的特点和挑战,以下是一些主要的特点: 卡牌设计和平衡:卡牌游戏的核心是卡牌设计和平衡。开发团队需要设计各种卡牌,确保它们在游戏中相互平衡,以便提供有趣的游戏体验。卡牌的特性、效…...

web —— css(1)

Web —— css基础 1. CSS样式表2. CSS的三种引入方式3. CSS 语法4. CSS 选择器4.1 元素选择器4.2 类选择器4.3 ID选择器4.4 属性选择器4.5 后代选择器4.6 子元素选择器4.7 伪类选择器4.8 分组选择器 5. 颜色和字体6. 显示方式display7. 盒子模型7.1 盒子模型 - 外边距塌陷7.2 盒…...

站群服务器的特性和好处是什么

站群服务器的特性和好处是什么 站群服务器的特性是什么?站群服务器是一种为一个网站或多个网站配置独立IP的服务器。因而相比一般的服务器,站群服务器最大的特性就是IP数量是非常的多。那么租用站群服务器使用有什么好处呢? 多网站优化 大…...

竞赛 行人重识别(person reid) - 机器视觉 深度学习 opencv python

文章目录 0 前言1 技术背景2 技术介绍3 重识别技术实现3.1 数据集3.2 Person REID3.2.1 算法原理3.2.2 算法流程图 4 实现效果5 部分代码6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习行人重识别(person reid)系统 该项目…...

软件设计模式的意义

软件设计模式的意义 所有开发人员都应该接触过软件设计模式这个概念,看过《设计模式-可复用的对象软件的基础》这本书,在面试中都被问过: 你用过哪些设计模式这种问题。但很大可能也就仅此而已了。 为什么好像只能从框架中找到设计模式的应用…...

vue基础知识十八:说说你对keep-alive的理解是什么?

一、Keep-alive 是什么 keep-alive是vue中的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染DOM keep-alive 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们 keep-alive可以设置以下props属性&#xff1a…...

Linux CentOS配置阿里云yum源

一:先备份文件,在配置失败时可以恢复 cd /etc/yum.repos.d mkdir back mv *.repo back 二:下载阿里云yum源 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc/yum.repos.d/epel…...

OpenClaw技能市场探索:GLM-4.7-Flash加持的10个实用插件

OpenClaw技能市场探索:GLM-4.7-Flash加持的10个实用插件 1. 为什么需要关注OpenClaw技能市场? 当我第一次接触OpenClaw时,最让我惊喜的不是它的基础功能,而是它丰富的技能市场生态。作为一个长期使用各类自动化工具的技术爱好者…...

Waveforms实战指南:基于React的交互式波形可视化深度解析

Waveforms实战指南:基于React的交互式波形可视化深度解析 【免费下载链接】waveforms An interactive, explorable explanation about the peculiar magic of sound waves. 项目地址: https://gitcode.com/gh_mirrors/wa/waveforms 在音频处理、信号分析和数…...

提升开发体验:LxgwWenKai开源字体效率优化指南

提升开发体验:LxgwWenKai开源字体效率优化指南 【免费下载链接】LxgwWenKai LxgwWenKai: 这是一个开源的中文字体项目,提供了多种版本的字体文件,适用于不同的使用场景,包括屏幕阅读、轻便版、GB规范字形和TC旧字形版。 项目地址…...

GLM-OCR镜像免配置优势:无需HuggingFace Token,离线环境安全可用

GLM-OCR镜像免配置优势:无需HuggingFace Token,离线环境安全可用 1. 什么是GLM-OCR及其核心价值 GLM-OCR是一个基于先进GLM-V编码器-解码器架构构建的多模态OCR识别模型,专门为复杂文档理解场景而设计。与传统的OCR工具不同,它不…...

Phi-3 Forest Laboratory 与SpringBoot微服务整合:打造企业级AI中台

Phi-3 Forest Laboratory 与SpringBoot微服务整合:打造企业级AI中台 最近和几个做企业级应用开发的朋友聊天,大家不约而同地提到了同一个痛点:公司内部有好几个业务团队都想用上最新的AI能力,比如用Phi-3这样的模型做智能客服、文…...

3分钟学会Qwerty Learner:打字练习与单词记忆的完美结合

3分钟学会Qwerty Learner:打字练习与单词记忆的完美结合 【免费下载链接】qwerty-learner 项目地址: https://gitcode.com/GitHub_Trending/qw/qwerty-learner Qwerty Learner是一款专为键盘工作者设计的开源学习工具,巧妙地将英语单词记忆与打字…...

LrcHelper:如何为网易云音乐获取精准同步的双语歌词文件

LrcHelper:如何为网易云音乐获取精准同步的双语歌词文件 【免费下载链接】LrcHelper 从网易云音乐下载带翻译的歌词 Walkman 适配 项目地址: https://gitcode.com/gh_mirrors/lr/LrcHelper LrcHelper是一款专门针对网易云音乐平台设计的歌词文件获取工具&…...

3大突破!LxgwWenKai字体效率革命:从代码阅读到多场景适配全指南

3大突破!LxgwWenKai字体效率革命:从代码阅读到多场景适配全指南 【免费下载链接】LxgwWenKai LxgwWenKai: 这是一个开源的中文字体项目,提供了多种版本的字体文件,适用于不同的使用场景,包括屏幕阅读、轻便版、GB规范字…...

设计师不用写代码了?实测TRAE SOLO Builder如何将Figma稿秒变可交互网页

设计师如何用TRAE SOLO Builder实现零代码网页开发 在数字产品设计领域,设计师与开发者之间的协作断层长期存在。设计精美的Figma稿转化为实际网页时,往往面临还原度不足、交互细节丢失等问题。TRAE SOLO Builder的出现,正在重新定义设计到开…...

3分钟快速上手:ComfyUI-WanVideoWrapper视频生成AI终极指南

3分钟快速上手:ComfyUI-WanVideoWrapper视频生成AI终极指南 【免费下载链接】ComfyUI-WanVideoWrapper 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI-WanVideoWrapper 还在为复杂的视频生成工具配置而头疼吗?ComfyUI-WanVideoWrap…...