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文件;
- 选择【调试】->【将转储另存为】;

相关文章:
C++(Qt)软件调试---将调试工具安装到AeDebug(11)
C(Qt)软件调试—将调试工具安装到AeDebug(11) 文章目录 C(Qt)软件调试---将调试工具安装到AeDebug(11)1、前言1.1 使用的调试工具 2、调试器安装1.1 WinDbg1.2 procdump1.3 DrMinGW1.4 vsjitdebugger 更多精彩内容👉个…...
浅谈限流式保护器在住宅电气防火的应用
安科瑞 华楠 【摘要】随着人民生活水平的提高,家用大功率电器普遍被使用,导致用电量剧增,电气火灾频发。文章分析了电气火灾发生的原因,并时电气火灾的防范措施进行了探讨。 【关键词】电气火灾;原因;防范…...
ChatGPT助力ModStartBlog,博客写作更智能
ModStartBlog v7.1.0,ChatGPT 支持、界面全新优化 在数字化时代,博客已经成为人们分享知识、表达观点和建立个人品牌的重要工具。ModStartBlog是一款流行的博客平台,其最新的版本v7.1.0不仅增加了ChatGPT支持,还对界面进行了全新…...
Jpa与Druid线程池及Spring Boot整合(二): spring-boot-starter-data-jpa 踏坑异常处理方案
Jpa与Druid线程池及Spring Boot整合(一) Jpa与Druid线程池及Spring Boot整合(二):几个坑 附录官网文档:core.domain-events域事件 从聚合根发布事件 存储库管理的实体是聚合根。在领域驱动设计应用程序中,这些聚合根通常会发布领域事件。Sp…...
Vue3组件库
Vue组件库 ViteVue3TypescriptTSX 1、项目搭建 1.1、创建项目(yarn) D:\WebstromProject>yarn create vite yarn create v1.22.19 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh pa…...
AUTOSAR从入门到精通-【应用篇】基于 CAN/LIN 总线的智能配电监控系统的研究设计
目录 前言 国内外研究现状 CAN 总线和 LIN 总线技术 2.1CAN 总线技术 2.1.1 通信模型...
数据安全服务能力评定资格证书-申请流程
数据安全服务能力评定(以下简称能力评定)是指对数据安全服务提供商从事数据安全服务综合能力的评定,包括技术能力、服务能力、质量保证能力、人员构成与素质、经营业绩、资产状况等要素。 用于对中华人民共和国境内的数据安全服务提供商提供…...
用js快速生成一个简单的css原子库 例如: .mr-18 .pl-18
第三方css原子库的缺点 比如 tailwindcss,有学习成本最开始写的时候效率可能还没有我们自己手写效率高,需要配置,会有原始样式被覆盖的问题;总之就是一个字重 自己搓的优点 学习成本低灵活不会有副作用 <!DOCTYPE html>…...
Java鹰眼轨迹服务 轻骑小程序 运动健康与社交案例
Java地图专题课 基本API BMapGLLib 地图找房案例 MongoDB 百度地图鹰眼轨迹服务 鹰眼轨迹服务概述 鹰眼是一套轨迹管理服务,提供各端SDK和API供开发者便捷接入,追踪所管理的车辆/人员等运动物体。 基于鹰眼提供的接口和云端服务,开发者可以迅…...
【产品经理】微信小程序隐私保护指引
为了分辨用户,开发者将在获取你的明示同意后,收集你的微信昵称、头像。 为了显示距离,开发者将在获取你的明示同意后,收集你的位置信息。 开发者收集你的地址,用于获取位置信息。 开发者收集你的发票信息࿰…...
springboot创建websocket服务端
springboot创建websocket服务端 1.配置类 package com.neusoft.airport.websocket;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.socket.server.standard.ServerEndp…...
网络安全攻防实战:探索互联网发展史
大家好,我是沐尘而生。 互联网发展史:数字世界的壮阔画卷 从早期的ARPANET到今天的万物互联,互联网经历了漫长的发展过程。然而,随着技术的进步,网络安全问题也随之而来。我们不仅要探索互联网的壮阔历程,…...
pwm接喇叭搞整点报时[keyestudio的8002模块]
虽然现在查看时间很方便,但是其实好像我的时间观念却越来越差。于是决定搞一个整点报时,时常提醒自己时光飞逝,不要老是瞎墨迹。 这篇主要讲一下拼装方式和配置,就差不多了。不涉及什么代码。3针的元器件,去掉正负接线…...
配置listener tcps加密 enable SSL encryption for Oracle SQL*Net
一 配置客户端和服务端的wallet 2端配置方法一致,相互添加证书 orapki wallet create -wallet “/u01/oracle/wallet” -pwd Wdkf984jkkgekj434FKFD -auto_login_local orapki wallet add -wallet “/u01/oracle/wallet” -pwd Wdkf984jkkgekj434FKFD -dn “CNho…...
【Sklearn】基于逻辑回归算法的数据分类预测(Excel可直接替换数据)
【Sklearn】基于逻辑回归算法的数据分类预测(Excel可直接替换数据) 1.模型原理2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果1.模型原理 逻辑回归是一种用于二分类问题的统计学习方法,尽管名字中含有“回归”,但实际上是一种分类算法。它的基本原理是通…...
自然数的拆分问题
题目描述 任何一个大于 11 的自然数 n,总可以拆分成若干个小于 n 的自然数之和。现在给你一个自n,要求你求出 n 的拆分成一些数字的和。每个拆分后的序列中的数字从小到大排序。然后你需要输出这些序列,其中字典序小的序列需要优先输出。 输…...
du -mh命令
du 命令查看每个文件夹大小(du 命令用法详解),du 命令的英文全拼是 disk usage,意思是占用的磁盘空间,该命令可以显示目录或文件的大小。 在执行“ du ”命令时,使用“ -h ”参数会以“人类可读格式”显示…...
MySQL 8 group by 报错 this is incompatible with sql_mode=only_full_group_by
文章目录 sql_mode配置ONLY_FULL_GROUP_BYSTRICT_TRANS_TABLESNO_ZERO_IN_DATENO_ZERO_DATEERROR_FOR_DIVISION_BY_ZERONO_AUTO_CREATE_USERNO_ENGINE_SUBSTITUTION 局部修改配置windows修改配置Linux修改配置 sql_mode配置 ONLY_FULL_GROUP_BY 用于控制是否允许对查询结果进…...
Mongodb (四十一)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、概述 1.1 相关概念 1.2 特性 二、应用场景 三、安装 四、目录结构 五、默认数据库 六、 数据库操作 6.1 库操作 6.2 文档操作 七、MongoDB数据库备份 7.1 备…...
16 dlsys GAN
和有监督的分类工作不同,生成任务的目标更不明确。难以评价生成结果的好坏。 Oracle discriminator 假设我们有一个先知判别器oracle discriminator可以分辨我们生成的内容是真还是假。 D(x) 表示判别数据为真的概率。 我们想让生产成的结果足够真实,所…...
工程师必备:高效阅读Datasheet的实用技巧
1. 为什么工程师必须掌握Datasheet阅读能力在嵌入式系统和硬件开发领域,Datasheet(数据手册)就是芯片的"使用说明书"。我从业十余年,见过太多工程师因为不会正确阅读Datasheet而踩坑的案例。有一次团队花了两个月调试一…...
单线程 Redis 的高性能之道
引言Redis 以单线程模型处理网络请求与命令操作,却能在高并发场景下保持惊人的吞吐能力。这背后离不开三大基石:全内存存储、高效数据结构(哈希表、跳表等)以及 epoll 多路复用机制,让单线程能够高效处理海量连接。 随…...
COMSOL电磁超声仿真技术:基于5.6版本模型,精确检测L形铝板裂纹的电磁超声测量方法
COMSOL电磁超声仿真: Crack detection in L-shaped aluminum plate via electromagnetic ultrasonic measurements 版本为5.6,低于5.6的版本打不开此模型电磁超声检测(EMAT)在工业无损检测领域一直是个热门方向,最近在COMSOL 5.6上…...
多车环境下车载毫米波雷达是否会相互干扰?
在汽车工业迈向智能化与自动化的进程中,毫米波雷达已然成为了车辆感知体系中不可或缺的一部分。这种波长介于1毫米至10毫米之间的电磁波进行探测的装置,凭借其能够穿透雨雪、浓雾及强光直射的全天候工作能力,为高级驾驶辅助系统提供了关键的距…...
5个维度教你掌握游戏自动化与效率工具开发
5个维度教你掌握游戏自动化与效率工具开发 【免费下载链接】JX3Toy 一个自动化测试DPS的小工具 项目地址: https://gitcode.com/GitHub_Trending/jx/JX3Toy 在游戏开发与玩家体验优化领域,游戏脚本开发正成为提升效率的关键技术。本文将系统介绍一款开源项目…...
原神帧率解锁终极指南:三步轻松突破60FPS限制
原神帧率解锁终极指南:三步轻松突破60FPS限制 【免费下载链接】genshin-fps-unlock unlocks the 60 fps cap 项目地址: https://gitcode.com/gh_mirrors/ge/genshin-fps-unlock 还在为《原神》60帧限制感到困扰吗?genshin-fps-unlock是一款专为《…...
2026最新Node.js+NVM全平台安装教程
2026最新Node.jsNVM全平台安装教程 前言 在前端、后端全栈开发中,Node.js 是必不可少的运行环境,而不同项目往往依赖不同的 Node.js 版本,手动安装卸载不仅麻烦还容易冲突。 NVM(Node Version Manager) 作为 Node.j…...
专题:哈希结构(已完结)
1.有效的字母异位词 class Solution { public:bool isAnagram(string s, string t) {unordered_map<char,int> mymap;for(auto c:s){mymap[c]mymap[c]1;}for(auto c:t){mymap[c]mymap[c]-1;}for(auto item:mymap){if(item.second!0){return false;}}return true;} };2.两…...
考研408计算机学科专业基础综合——计算机网络复习
考研408计算机学科专业基础综合 计算机网络复习 核心说明:本笔记聚焦考研408计算机网络高频考点、必背知识点,贴合命题规律(选择题为主、大题集中在核心协议),剔除冗余内容,突出重难点,适配冲刺…...
用C++实现LBM格子玻尔兹曼方法MRT模拟加热气泡脱离
lbm格子玻尔兹曼方法mrt模拟加热气泡脱离c代码最近在研究流体力学相关的模拟,其中LBM(格子玻尔兹曼方法)的MRT(多松弛时间)模型在模拟加热气泡脱离这类复杂现象时展现出独特的优势。今天就来和大家分享一下如何用C 实现…...
