VC下发布的Release版程序的异常捕捉

2016-02-19 18:42 2 1 收藏

有了下面这个VC下发布的Release版程序的异常捕捉教程,不懂VC下发布的Release版程序的异常捕捉的也能装懂了,赶紧get起来装逼一下吧!

【 tulaoshi.com - 编程语言 】

寻找Release版程发生异常退出的地方比Debug版麻烦得多。发生异常的时候windows通常会弹出一个错误对话框,点击详细信息,我们能获得出错的地址和大概的出错信息,然后可以用以下办法分析我们的程序。  

一. 用MAP文件定位异常代码位置。

1.如何生成map文件

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

打开“Project →Project Settings”,选择 C/C++ 选项卡,在“Debug Info”栏选择“Line Numbers Only”(或者在最下面的 Project Options 里面输入:/Zd),然后要选择 Link 选项卡,选中“Generate mapfile”复选框,并再次编辑 Project Options,输入:/mapinfo:lines,以便在 MAP 文件中加入行信息。然后编译工程则可以在输出目录得到同名的.map文件。

2. 使用map文件定位发生异常的代码行

编译得到的map文件可以用文本方式打开,大致是这样的格式:(括号内是PomeloWu填加的注释)

0729                 (←工程名)

 Timestamp is 42e9bc51 (Fri Jul 29 14:19:13 2005)    (←时间戳)  

 Preferred load address is 00400000         (←基址)  

……(Data段描述,省略)

 Address         Publics by Value              Rva+Base     Lib:Object  

0001:00000000       ?_GetBaseMessageMap@C0729App@@KGPBUAFX_MSGMAP@@XZ 00401000 f   0729.obj
……(↑这一行开始是函数信息,下面省略) 

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

Line numbers for .ReleaseShowDlg.obj(C:

来源:https://www.tulaoshi.com/n/20160219/1618682.html

延伸阅读
在Windows操作系统中,任务栏的右边(托盘)会常驻几个图标,如输入法切换图标、音量控制图标等,此外我们还经常遇到具有托盘图标的软件,如金山词霸、实时监测功能的杀毒软件等。这些软件在后台运行,通常不占用太多的屏幕资源,只在通知栏上放一个小小的标志,必要时我们可以通过用鼠标点击图标对其进行选单操作或激活其主窗口。有时我们自...
看过徐景周写过的一篇“程序界面多模式显示的实现”,在一个应用程序中使程序拥有多种显示模式,但是这个界面是由SDI的MFC文档视图结构实现,但是使用的代码在MDI的多文档/视图中不能实现,通过MSDN我找到了一些实现 MDI 的多模式实现方法,不敢独享,与大家分享 。 利用SDI和MDI实现这种多模式的显示的应用程序,第一步首先要实现的...
在应用程序开发中如何检测、处理程序的运行错误是一个很重要的问题。在 Delphi 的集成开发环境( IDE )中提供了一个完善的内置调试器,可以帮助你发现大部分程序错误。但并不是所有的错误都可以被发现,而且当程序涉及到与外设的数据交换或操作外设,如要求用户输入、读写磁盘等时,错误的发生是程序无法控制的,如输入非法字符、磁盘不能读...
标签: Delphi
  12.4.3 断点的使用 12.4.3.1 设置断点 设置断点首先在 Code Editor中选定你想设置断点的代码行,而后进行如下的任一种操作: ● 单击选定代码行左边的空白 ● 按 F5 ● 选择 Code Editor加速菜单的 Toggle BreakPoint 项 ● 选择 Run|Add Breadpoint 打开断点编辑对话框 (Edit BreakPoint Di...
标签: Delphi
  在应用程序开发中如何检测、处理程序的运行错误是一个很重要的问题。在 Delphi 的集成开发环境 ( IDE ) 中提供了一个完善的内置调试器,可以帮助你发现大部分程序错误。但并不是所有的错误都可以被发现,而且当程序涉及到与外设的数据交换或操作外设,如要求用户输入、读写磁盘等时,错误的发生是程序无法控制的,如输入非法字符、...

经验教程

904

收藏

68
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部