利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突
VS2019利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突
之前一直是使用release发布代码模式进行程序编译,前天突然出现这个问题:
0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突
查找资料发现大概率是出现了空指针。没有判断指针是否为空就进行后续操作导致的错误,但是release模式并没有提示问题出现在哪里,只是显示程序崩掉,并且给你错误信息,查找资料后发现Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用,但是会忽略调试信息,这不利于我们进行程序调试。(所以我只凭借经验进行初步调试,但是效率很低也没有解决实际问题)
而debug配置能够包含调试信息,并且不作任何优化,便于程序员调试程序。
这就方便我们进行程序的调试和断点设置,设置了断点就可以看到所有变量的信息。就方便我们找到问题出现在了哪里。
果然,当我将配置改为debug后,运行程序,就会自动显示下图所示地方发生错误:为nullptr,空指针。那么问题就显而易见了。
但是我在上句语句中已经获得了pGalvanometer
对象指针,这里不应该是nullptr。所以我在该位置设置断点,运行后,发现hr
不为S_OK
,而是显示加载有问题,那么很显然问题出在我加载外部组件COM中了。
但是我并没有改变COM组件的加载代码,于是认为可能组件注册出现问题。于是我重新注册了一下COM组件。
问题成功解决!
该次经历给我的经验就是在编写调试代码时要及时切换为Debug模式,因为Debug会保留调试信息,而且代码是原汁原味的,不会做任何改变,也方便我们进行调试。我本身并不是计算机专业,所以这些很基础的经验对我来说也帮助甚大。
利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突相关推荐
- 0x00007FF73DF2C2EB 处(位于 PCL中)引发的异常: 0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突。
关于读取或写入问题时发生访问冲突的错误 原因:一般情况下是因为读取或写入文件的路径发生了错误. 一定要仔细核对路径问题,还应该注意一个小细节. 如图: 这里的路径 D:\table_scene_lms ...
- 0xC0000005: 读取位置 0x0000000000000030 时发生访问冲突的解决
**今天拿来一位博主的ICP代码进行测试编译,却显示: 0x00007FFDF92177D7 (vtkCommonCore-8.0.dll)处(位于 Project1.exe 中)引发的异常: 0xC ...
- (xxx.dll)处(位于xxx.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000003F 时发生访问冲突。已解决。
下面两个这种类型的报错都一样.(跟xxx.dll和xxx.exe都没关系) 0x794CECC1 (Qt5Cored.dll)处(位于 xxx.exe 中)引发的异常: 0xC0000005: 读取位 ...
- 0xC0000005: 读取位置 0x6C6C6568 时发生访问冲突的原因及解决方法
程序很简单,就想打印字符串数组中的每一个字符串 void test(char** s, int size) { for (int i = 0; i < size; i++) printf(&qu ...
- 0x774B9E37 (KernelBase.dll)处(位于 LogonServer.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000000 时发生访问冲突解决
网狐大联盟核心服务数据解锁函数访问冲突,报错: 0x774B9E37 (KernelBase.dll)处(位于 LogonServer.exe 中)引发的异常: 0xC0000005: 读取位置 0x ...
- 处有未经处理的异常:0xC0000005 : 读取位置 0x00000000 时发生访问冲突。
转 首先排除一种小概率事件就是系统冲突导致的,比如系统盘目录存在类似的第三方库文件,程序运行将崩溃,并报错0xC0000005 : 读取位置 0x00000000 时发生访问冲突. 上面的意思就是,你 ...
- XXX处有未经处理的异常: 0xC0000374: 堆已损坏,处有未经处理的异常: 0xC0000005: 读取位置 0x4F774B16 时发生访问冲突。
XXX处有未经处理的异常: 0xC0000374: 堆已损坏,处有未经处理的异常: 0xC0000005: 读取位置 0x4F774B16 时发生访问冲突. ** 出现该问题的场景是其他公司调用我们的 ...
- Opencv4测试报错00007FFB3253A9C0 (ntdll.dll)处引发的异常: 0xC0000005: 读取位置 0x0000000000000010 时发生访问冲突
报错信息如下: 0x00007FFB3253A9C0 (ntdll.dll)处(位于 test1.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000000000000010 时发 ...
- 0x0F1AFD76 (libcocos2d.dll) (Plane.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x00000018 时发生访问冲突。
0x0F1AFD76 (libcocos2d.dll) (Plane.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x00000018 时发生访问冲突. Get data fr ...
最新文章
- 一目了然了解JAVA集合体系
- python获取当前进程id_Python进程,多进程,获取进程id,给子进程传递参数操作示例...
- 一种巧妙的drawable.xml替代方案
- 爬虫好学吗python-爬虫Python入门好学吗?学什么?
- 使用DOM操纵HTML文档几点粗浅认识
- (chap7 确保WEB安全的HTTPS) HTTPS和SSL
- 全球首个知识增强千亿大模型鹏城-百度·文心发布
- linux之添加python环境变量
- snprintf的返回值代表字节数 != 实际写入字节数
- Python的一些单行代码(摘抄)
- 域用用户怎么允许共享_怎么设置访问WIN10共享文件夹无需验证(输入用户名和密码)?...
- 【从零开始学架构-李运华】09|架构设计原则案例
- UMLChina公众号文章精选(20220126更新精选)
- python 数据挖掘_Python数据挖掘框架scikit数据集之iris
- DJ4-3 路由器的工作原理
- 多因子选股之tushare数据获取
- 【C语言】打印出一箭穿心图案(简单版)----gotoxy函数
- 工作的驱动力——成就感
- JAVA基础知识-集合
- CSS 多种布局方式