Release环境下调式 由于一些原因没办法在Debug下运行所以只有Release下运行,运行过程中偶尔会出现崩溃的情况,请问有没有办能找出崩溃的代码? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 release也是可以调试的,进项目设置选择生成调试信息,不优化,等 是不能调试运行还是不能用Debug版? 试试这个Add Crash Reporting to Your Applications with the CrashRpt Library(By Mike Carruth)http://www.codeproject.com/KB/debug/crash_report.aspx 可以用__try搭配GetExceptionInformation宏来捕获异常并得到异常信息。 release跟debug的区别只是一些编译器选项的设置不同啊。这里有介绍:http://topic.csdn.net/t/20030312/10/1520262.html release也是可以调试的,进项目设置选择生成调试信息,不优化,等 要不就try{....}catch{....} 我觉得最好的办法是在代码中加入log信息,写入log文件,那样直接察看log文件就能知道问题所在了 写日志,或者是在疑似的几个方法中抓CException扔出messgbox 1、Release 加上调试信息,调试运行,崩溃后看堆栈信息,就知道了。2、直接运行,崩溃后用windbg attach上也可以看堆栈信息。 最简单的办法可以写log或MessageBox 项目属性-->C/C++-->General-->Debug Info 选 Program Database就可以设断点了。崩溃后有堆栈信息。如果嫌断点不准确,可以在项目属性里禁掉所有的优化。 生成PDB就可以了.还有一种方法就是程序崩溃时进行程序堆栈的转储,不过还是需要生成PDB. 我也一直都是用的Release调试! 我原来维护的一个程序也是这样,我是用messagebox进行调试的-_-! 把感觉出错的地方打出来看看messagebox 生成MAP文件,根据崩掉的地址,找到函数体 多用几个messagebox()测试一下。看看到底是出在那个地方.貌似这个方法比较粗.要是一些协调的问题。貌似就无能威力了 被开了,是我的错还是公司的问题?(请你们进来看看),心情非常的不爽! 不能够使用“go to definition”,怎么解决? MSDN使用指引(转) 当捕捉到EV_RXCHAR时,cbInQue是零,请经验人士指点 100分求问MFC菜鸟问题 关于字符串连接的问题!!!!! 关于CListCtrl的菜鸟级的问题,请高手帮忙!! 用BeginPath()和EndPath()怎么来创建一个CRgn? 如何在VC下设置文件夹为共享 问个小问题 有个有关链表类添加成员的的问题请教大家,谢谢 建好了一个Win32 DLL工程后来发现要使用MFC,该怎么使用?
Add Crash Reporting to Your Applications with the CrashRpt Library
(By Mike Carruth)
http://www.codeproject.com/KB/debug/crash_report.aspx
http://topic.csdn.net/t/20030312/10/1520262.html
try
{
....
}
catch
{
....
}
2、直接运行,崩溃后用windbg attach上也可以看堆栈信息。
就可以设断点了。崩溃后有堆栈信息。
如果嫌断点不准确,可以在项目属性里禁掉所有的优化。
还有一种方法就是程序崩溃时进行程序堆栈的转储,不过还是需要生成PDB.