2 lzg0610210238 lzg0610210238 于 2016.05.03 16:21 提问

VC++ Release模式下执行Live555::Run函数时程序崩溃

在Debug模式下程序能够正常运行。

在Release模式下面程序运行到该行崩溃,且无法定位进去进一步debug。

基于Win10,VS2015开发。

具体崩溃前后画面如下。请求各位大侠给予指导意见。
图片说明
图片说明

1个回答

oyljerry
oyljerry   Ds   Rxr 2016.05.03 16:49

指针异常了,检查一下,你最后一个页面中的各个参数指针等

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
VC下Release版程序崩溃异常捕捉与查找--map文件方式
寻找Release版程发生异常退出的地方比Debug版麻烦得多。发生异常的时候windows通常会弹出一个错误对话框,点击详细信息,我们能获得出错的地址和大概的出错信息,然后可以用以下办法分析我们的程序。   一.     用MAP文件定位异常代码位置。 1.         如何生成map文件 打开“Project →Project Settings”,选择 C/C++ 
CLion,debug模式程序正常运行,run模式下出现停止运行
也许这个方法会奏效,那就是找到编译好的exe文件,然后设置该文件以兼容模式运行。
dll的内存申请和释放问题--Debug程序正常而Release程序崩溃
C++编程中经常遇到这样的需求:主函数需要调用一个dll库函数并返回一块大小不定的存储着处理结果的内存,这时容易想到两种选择:一是使用vector的引用作为形参,二是使用指针,在主函数中定义指针,而在dll库函数中申请内存。
今天解决了的一个DEBUG运行正常RELEASE出错的问题!
今天正在做一个项目,进展顺利,但是编译成RELEASE版本运行却发现错误.自己弄了半天也没搞定.但最后还是看了一篇文章解决了.主要原因是因为DEBUG和RELEASE在解决函数掉用上的方式的不同.DEBUG是通过EBP来间接实现的.就象这样EBP+2 EBP+4 但在RELEASE下优化会省略 EBP 栈基址指针,这样通过一个全局指针访问栈.这样如果调用和实现方式不同就会使返回地址产生错误.比
VS下 debug与release运行结果不一致
摘要 VS中遇到 debug与release下运行结果不一致,太疼了 VS debug release 网罗了大量文章,主要说变量未初始化的较多,代码量较大,着实不好搞,依次排查,但凡涉及的都已经初始化,无果... eggs hurt~~~持续~~~ 最后初步敲定嫌疑:PI的问题,每次用到介个全局变量的时候就报错,把代码中PI用3.1415926****代替,无果.
断言assert在debug版本与release版本中的区别
断言断言是用来判断一些一定不会出现的情况下使用的。 你真的会使用断言吗?debug版本与release的不同点:debug版本中含有调试信息,不会对程序进行优化,assert相应的宏会被执行。 release版本中不含有调试信息,会对程序进行优化,assert相应的宏不会被执行。 debug版本与release版本的区别
在Vc++的Release版本模式调试程序时输出信息到文件
目前只能输出CString信息到文件,所有信息的总目录默认设在“D:\@VC++ TraceInfo”下,各个程序的Info分别放在和程序名同名的子目录中,为了方便查找信息,所有信息的文件名统一格式为:“Info+时间+月日-年.txt”。<br><br>详细使用说明请参考打包下载文件中的 readme.htm 文件。<br><br>注:如果使用中有任何问题和建议请联系: MarShal_LiuKai@sohu.com 或 jtjia@163.com<br><br>使用步骤:<br>1.在使用的类的cpp文件中(如果整个程序中都要使用,在StdAfx.h头文件中)加入如下行:<br>#include "outinfotofile.h"<br>2.在要输出信息的地方插入以下行:<br>AfxOutInfoToFile("所需输出的信息");<br><br>[代码性质] VC可重用代码段<br>[代码作者] 刘凯,贾江涛<br>[文件大小] 6K
Debug系列:VC++程序Release版崩溃的解决办法
from: http://rendao.org/blog/1999/ Debug系列:VC++程序Release版崩溃的解决办法 VC++程序发布后,如果在客户那运行崩溃,且研发环境下无法本地复现,工程师可能就要去现场,如果在现场也只是偶发的bug,去了现场也是抓狂。那,有什么办法能便于我们解决VC++程序生产环境下崩溃的问题呢?   常用方法,为你的程序加入Dump机制。
MFC程序崩溃问题汇总
一、 程序崩溃多半都是传参的时候参数类型问题,或者是数组越界(基本都是字符串长度没开够),或者有某个全局变量在方法(局部)里被重定义了。这些都是VC检测不出来的。二、 16/08/30 今天我写了个控件,是调用底层库的,就是赤峰那个项目的,他们提供的底层库的入参是string类型,我在typedef函数指针的时候,发现MFC并没提供这个类型,我就手动添加了命名空间和头文件,然后写个Demo测试
程序崩溃的定位
1.程序要有PDB文件和MAP文件,两者都是符号集,PDB是共调试用的,MAP文件是可读信息符号集(记事本就可以打开) 2.程序崩溃时要及时产生相应的dump文件,这个是程序运行的信息,堆栈、寄存器、出错代码等信息 3.PDB文件、MAP文件、dump文件、exe文件最好在同目录 4.调试dump文件可以用windbg或者VS。使用windbg时输入命令!analyze -v 查看程序运行信