0x011747EF 处有未经处理的异常(在 VedioOcxTest.exe 中): 0xC0000005: 读取位置 0x00000398 时发生访问冲突

沧海1梦 2016-11-10 01:36:02
vs2012下程序编译成功后,运行时候出现访问冲突的错误,请各位技术er帮我看看,界面是用mfc来实现的,如下图:

正常应该是获得一个播放句柄,启动云台的操作,但是这里出现内存访问冲突了。
...全文
1238 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
AlbertS 2016-11-11
  • 打赏
  • 举报
回复
引用 5 楼 cwt19902010 的回复:
[quote=引用 1 楼 sunyongliang118 的回复:] 内存要么越界了,要么内存分配释放出问题了。总之多半是内存出了问题。 是不是你返回的句柄已经失效???句柄标识的对象已经释放,那块内存已经重写,然而你又调用了失效内存引起的问题???
单步,感觉应该是句柄的问题,我再4楼上了图片,麻烦你再看下,谢谢[/quote] 你的句柄已经失效为NULL了,在前边找一下哪里释放了
小灸舞 2016-11-11
  • 打赏
  • 举报
回复
单步类的实例“构造”或“复制”或“作为函数参数”或“作为函数返回值返回”或“参加各种运算”或“退出作用域”的语句对应的汇编代码几步后,就会来到该类的“构造函数”或“复制构造函数”或“运算符重载”或“析构函数”对应的C/C++源代码处。

VC调试时按Alt+8、Alt+7、Alt+6和Alt+5,打开汇编窗口、堆栈窗口、内存窗口和寄存器窗口看每句C对应的汇编、单步执行并观察相应堆栈、内存和寄存器变化,这样过一遍不就啥都明白了吗。
对VC来说,所谓‘调试时’就是编译连接通过以后,按F10或F11键单步执行一步以后的时候,或者在某行按F9设了断点后按F5执行停在该断点处的时候。
赵4老师 2016-11-11
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处,看不懂时双击下一行,直到能看懂为止
paschen 2016-11-10
  • 打赏
  • 举报
回复
引用 6 楼 cwt19902010 的回复:
引用 2 楼 paschen 的回复:
出错时点中断,通过调用堆栈定位到相关位置,然后分析通常,根据你的错误提示,通常使用了无效的指针
单步调试到这,出现无法读取内存。
很明显你这个句柄是无效的,跟踪看是哪里开始已经无效了
沧海1梦 2016-11-10
  • 打赏
  • 举报
回复
引用 2 楼 paschen 的回复:
出错时点中断,通过调用堆栈定位到相关位置,然后分析通常,根据你的错误提示,通常使用了无效的指针
单步调试到这,出现无法读取内存。
沧海1梦 2016-11-10
  • 打赏
  • 举报
回复
引用 1 楼 sunyongliang118 的回复:
内存要么越界了,要么内存分配释放出问题了。总之多半是内存出了问题。 是不是你返回的句柄已经失效???句柄标识的对象已经释放,那块内存已经重写,然而你又调用了失效内存引起的问题???
单步,感觉应该是句柄的问题,我再4楼上了图片,麻烦你再看下,谢谢
沧海1梦 2016-11-10
  • 打赏
  • 举报
回复
引用 3 楼 shihengzhen101 的回复:
引用了非法的内存,你把出问题的位置截个图,你现在这个图看不出问题在哪
AlbertS 2016-11-10
  • 打赏
  • 举报
回复
引用了非法的内存,你把出问题的位置截个图,你现在这个图看不出问题在哪
paschen 2016-11-10
  • 打赏
  • 举报
回复
出错时点中断,通过调用堆栈定位到相关位置,然后分析通常,根据你的错误提示,通常使用了无效的指针
振翅高飞 2016-11-10
  • 打赏
  • 举报
回复
内存要么越界了,要么内存分配释放出问题了。总之多半是内存出了问题。 是不是你返回的句柄已经失效???句柄标识的对象已经释放,那块内存已经重写,然而你又调用了失效内存引起的问题???
全志R16平台编译linux系统V1.0.txt 2017/4/11 13:36 (编译请使用编译android的lichee的选项编译生成的.config文件,不然直接编译会报错!!!!) rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ tar zxvf lichee_parrotv1.1_20161202.tar.gz rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ cd lichee/ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 0. sun8iw5p1 Choice: 0 All available platforms: 0. android 1. dragonboard 2. linux 3. tina Choice: 2 All available kernel: 0. linux-3.4 Choice: 0 All available boards: 0. bell-one 1. evb 2. evb-20 3. evb-30 4. evb-rtl8723bs 5. sc3813r Choice: 3 rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh 错误1: KCONFIG_AUTOCONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/auto.conf KCONFIG_AUTOHEADER=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/autoconf.h KCONFIG_TRISTATE=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/tristate.config BUILDROOT_CONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/.config /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/conf --silentoldconfig Config.in # # make dependencies written to .auto.deps # ATTENTION buildroot devels! # See top of this file before playing with this auto-preprequisites! # make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/buildroot' You must install 'makeinfo' on your build machine makeinfo is usually part of the texinfo package in your distribution make: *** [dependencies] 错误 1 make:离开目录“/home/wwt/linux_r16/lichee/buildroot” ERROR: build buildroot Failed rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ d/buildroot-config/conf.o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/zconf.tab.o -o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buil

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧