C++软件调试与异常排查

C++程序启动时报“0xc0000022”无法启动的错误-卡核

C++程序启动时报“0xc0000022”无法启动的错误

360安全卫士怀疑C++程序依赖的某个dll包含病毒行为,将该dll库隔离了、锁定住了,禁止其他程序访问该文件,导致C++程序启动时报错,启动失败。本文简单地讲述整个问题的排查过程,给大家提供一...
ck的头像-卡核ck14天前
04.8W+1.4W+
内存越界一定会导致程序崩溃吗?详解内存越界-卡核

内存越界一定会导致程序崩溃吗?详解内存越界

目录1、什么是内存越界?1.1、对数组的读越界 1.2、执行strcpy时的写越界 1.3、执行memcpy时的写越界2、内存越界一定会导致程序崩溃吗?3、有两种情况的内存操作是必然会导致程序崩溃的3.1、...
ck的头像-卡核ck5个月前
04.5W+1.6W+
排查软件关闭时访问了0xfeeefeee内存地址导致内存访问违例的崩溃-卡核

排查软件关闭时访问了0xfeeefeee内存地址导致内存访问违例的崩溃

最近在使用duilib开源库实现图片查看工具软件ImageViewer,调试时发现,程序关闭时访问了0xfeeefeee内存地址,触发内存访问违例,导致了软件崩溃。本文分享一下这一问题的排查过程。1、问题描述...
ck的头像-卡核ck3个月前
04.4W+6898
引发0xC0000005内存违例几种可能原因分析-卡核

引发0xC0000005内存违例几种可能原因分析

目录1、概述2、空指针访问3、已释放内存的访问4、内存越界5、总结        在日常的软件异常排查中,我们经常会遇到0xC0000005内存访问违例的异常。对于简单的异常,windbg分析dump文件,结...
ck的头像-卡核ck3个月前
04.3W+6613
C++软件异常分析概述-卡核

C++软件异常分析概述

   最近几年工作中很大一部分内容是排查软件运行过程中遇到的各种异常,无论是底层的网络模块、协议模块和组件模块,还是上层的UI模块,都处理过多次,见识了各式各样的C++异常或崩溃,积累了...
ck的头像-卡核ck5个月前
03.8W+7906
Windbg使用详解-卡核

Windbg使用详解

目录1、Windbg简介2、Windbg版本3、Windbg安装包的获取与安装4、PDB文件说明5、Windbg中pdb符号文件路径配置6、在Windbg中配置pdb文件路径和源代码路径7、常用的Windbg命令8、Windbg静态分析dum...
ck的头像-卡核ck5个月前
03.7W+8513
通过查看Windbg中的变量值去定位C++软件异常问题-卡核

通过查看Windbg中的变量值去定位C++软件异常问题

目录1、概述2、如何在windbg中查看变量的值3、mini dump文件与全dump文件4、使用windbg初步分析5、查看变量的内存找到了线索,排查出问题6、解决办法7、为啥不同的PC上会有不同的表现8、最后我...
ck的头像-卡核ck5个月前
03.7W+2.1W+
几秒读懂C++虚函数调用的汇编代码实现-卡核

几秒读懂C++虚函数调用的汇编代码实现

多态是C++中最重要的特性之一,对虚函数的调用在C++代码中是随处可见的。虚函数(代码段地址)被存放在虚函数表中,调用虚函数的流程是这样子的:先获取虚函数表的首地址,然后根据目标虚函数在...
ck的头像-卡核ck3个月前
03.6W+2.1W+
Visual Studio调试方式详解-卡核

Visual Studio调试方式详解

目录1、概述2、Debug下的调试3、Release下的调试4、附加到进程调试5、总结 使用IDE调试代码是开发人员必须掌握的技能,是软件遇到问题时一个最直接的排查方式,今天我们就来讲一下使用Visual S...
ck的头像-卡核ck5个月前
03.4W+2W+
使用Process Explorer和Dependency Walker定位dll库动态启动失败的问题(常用分析工具)-卡核

使用Process Explorer和Dependency Walker定位dll库动态启动失败的问题(常用分析工具)

   近日测试同事反馈,我们的C++客户端软件登录后显示一直连不上会议服务器,于是使用一些软件工具详细地分析了一下,最终发现是底层dll库版本不一致导致的。今天就分享一下这个问题的详细排...
ck的头像-卡核ck5个月前
03.3W+6144
使用Windbg过程中两个使用细节分享-卡核

使用Windbg过程中两个使用细节分享

  我们在使用工具的过程中,一般都会遇到一些使用上的细节或者技巧,今天就来给大家分享一下最近使用Windbg过程中遇到的两个问题,以供参考。C++软件异常排查从入门到精通系列教程(专栏文章...
ck的头像-卡核ck5个月前
03.3W+8586
Visual Studio高效调试手段与技巧总结(经验分享)-卡核

Visual Studio高效调试手段与技巧总结(经验分享)

目录1、对0xCCCCCCCC、0xCDCDCDCD和0xFEEEFEEE等常见异常值的辨识度2、在Debug下遇到报错弹框,点击重试,查看函数调用堆栈3、调试时程序和调试器都发生了闪退,可以尝试到Output窗口中找线索4...
ck的头像-卡核ck5个月前
03.3W+2.2W+