相关推荐
-
windows 程序异常崩溃等错误定位
MAP/映射文件 1.MAP 映射文件的作用:MAP文件可以查找崩溃或者程序异常地址,然后就可以精确地定位到源代码中出错的代码行。 2.VS中生成MAP文件的方法,项目属性中选择生成映射文件,如下图 编译完,会在生成目录生成对应的xxxxx.map文件 3. 1.程序调试阶段或者发布后(发布程序时需要一起打包生成的对应MAP文件,因
-
脱壳方法汇总
一、脱壳基础知识 1、脱壳的概念 在第三章中讲了加壳的概念,与加壳技术相对的就是脱壳技术了。脱壳就是将已经加壳的程序从壳中剥离出来。既然能给程序进行加壳,那也会有相应的脱壳方法。尽管理在有些壳很难脱掉,但是脱壳技术也在不断的进步,而且在不断竞争中发展状大。 2、OEP OPE的意思就像它的名字一样容易理解。OEP就是原程序的入口点,也就是真正的入口点。 当被加壳的程序运行后,首先运行的是...
-
linux crash在动态库中,通过map查找crash位置
linux进程crash时,通常我们可以通过gdb+core或addr2line解析出进程crash在哪一个函数中,有时crash在动态链接库中,解析出的core可能只有一个地址,而不能知道是在哪一个函数,这时可以尝试通过/proc/进程ID/maps的方法找到crash的位置。通过查看进程的map可以看出crash的位置在libsample_fun.so的代码段,找到最接近0x478且比0x478下的地址,这个地址的函数就是发生crash的函数。使用g++将这个源文件编译出动态库。将这个函数名打印出来。
-
利用map文件进行debug
利用map文件进行debug
-
vs2010利用map,cod文件定位崩溃代码行
利用map,cod文件定位崩溃代码行 利用vs2010 新建一个空的控制台项目,添加文件gtg.cpp,内容如下 void crash() { inti=1; intj=0; i/=j; } int main() { crash(); return0; } 配置生成map及cod文件
-
关于MAP文件的使用 - j2mefans
导读: 在看《深入理解计算机系统》的时候总会看到MAP文件,一直不懂,今天看到一片相关的文章,收录下来,大家一起看看吧。毕竟有些时候我们的IDE提示的信息不够明白,使用MAP文件是一个调试的好帮手。仅通过崩溃地址找出源代码的出错行作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的——那就是,程序发生了崩溃!“该程序执行了非法操作,即将关闭
-
【Linux 下gdb调试——定位程序崩溃位置】
当程序出现错误,可使用gdb在线调试,以下举一个简单例子说明,如何定位程序。 1.创建一个文件gdb_test.c,输入以下代码。代码中的第5行,使用了未初始化为有效值的指针,运行过程中肯定是会出错的。 1 #include “stdio.h” 2 3 4 int main() 5 { 6 int b = 0; 7 b = 10; 8 printf("****** b = %d ************ ",*b); 9 } 2.编译源码,生成可执行文件gdb_test。增加参
-
通过崩溃地址找错误行数之Delphi版
最近程序出现地址崩溃错误信息 在网上查找处理方法,大部分人只是复制别人的文章.有些地方不够详细. 什么是 MAP 文件?简单地讲, MAP 文件是程序的全局符号、源文件和代码行号信息的唯一的文本表示方法,它可以在任何地方、任何时候使用,不需要有额外的程序进行支持。而且,这是唯一能找出程序崩溃的地方的救星。 DELPHI下生成MAP文件的方法: 生成详细的MAP
-
根据崩溃地址确定错误代码行
(1).map文件:property->Configuration Properties->Linker->Debugging 中的Generate Map File选择Yes(/MAP); (2).cod文件:property->Configuration Properties->C/C++->output Files中Assembler OutPut中选择Assembly,Machin...
-
VC++ 6.0 中如何使用 CRT 调试功能来检测内存泄漏(转)
VC++ 6.0 中如何使用 CRT 调试功能来检测内存泄漏作者:JerryZ下载例子源代码 最近看了周星星 Blog 中的一篇文章:“VC++6.0中内存泄漏检测”,受益匪浅,便运行其例子代码想看看 Output 窗口中的输出结果,可惜怎么弄其输出都不是预期的东西,郁闷了半天,便到水坛里找到周星星,请求他指点一、二,然而未果。没有办法,最后我一头栽进 MSDN 库狂搜了一把,功夫不负有心人
-
[转]VC调试篇-不知道转自何处
shanshan VC调试篇 难怪很多前辈说调试是一个程序员最基本的技能,其重要性甚至超过学习一门语言。不会调试的程序员就意味着他即使会一门语言,却不能编制出任何好的软件。 我以前接触的程序大多是有比较成形的思路和方法,调试起来出的问题都比较小,最近这个是我自己慢慢摸索调试,接触了很多新的调试方法,并查了很多前辈的总结,受益匪浅,总结以前的和新的收获如下:...
-
仅通过崩溃地址找出源代码的出错行
标 题:仅通过崩溃地址找出源代码的出错行 (11千字)发信人:老罗时 间:2003-2-7 14:01:56详细信息:作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的——那就是,程序发生了崩溃! “该程序执行了非法操作,即将关闭。请与你的软件供应商联系。”,呵呵,这句 M$ 的“名言”,恐怕就是程序员最担心见
-
调试Release发布版程序的Crash错误(二)(
<br /> 上篇给出的方案一还要补充几句。通过“crash地址 + MAP文件”来定位出错代码位置虽然需要经过比较复杂的地址计算,但却是最简单实现的方式。如果仅仅想通过崩溃地址定位出错的函数,就更加方便了。我在网上找到一个解析MAP文件的小工具,可以非常清晰的列出每个函数的地址,并且可以将分析表格导出为Excel文件。工具下载地址:http://e.ys168.com/?tinyfun,工具目录下VCMapper.exe。<br /> 另外上篇主要参考两篇文章:<br /> http://ww
-
Go:bad internal offsets错误的内部偏移(附完整源码)
Go:bad internal offsets错误的内部偏移(附完整源码)
-
[转贴]仅通过崩溃地址找出源代码的出错行
[转贴]仅通过崩溃地址找出源代码的出错行好友老罗文章,有时候特别有用,转贴于此:作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的——那就是,程序发生了崩溃!“该程序执行了非法操作,即将关闭。请与你的软件供应商联系。”,呵呵,这句 M$ 的“名言”,恐怕就是程序员最担心见到的东西了。有的时候,自己的程序在自己的机器上运行得好好的,
-
汇编网址
<br />OPCODES手册 <br />http://byhh.net/f/CS/1175690465/opcodes.rar <br /> <br />老罗的缤纷天地<br />http://www.luocong.com/(有OPCODES解析)<br /> <br />MASM32<br />http://www.movsd.com/<br /><br />RadASM<br />http://www.radasm.com/<br /><br />Hiew<br />http://www.serj
-
Qt程序crash信息的捕捉与跟踪(qt-mingw)
在用qt编写程序时经常会遇到崩溃问题,如果抓取不到crash堆栈信息就会对崩溃问题束手无策,只能对其进行复现,推断。 目录 一般解决crash问题时有如下步骤: 如何执行以上3步骤,下面我详细介绍如何操作; 步骤1: 步骤2: 步骤3: 网友评论: 一般解决crash问题时有如下步骤: 从软件发行版本能跟获得debug信息,在不同平台下有不同的表现方式,目...
-
MIF文件格式说明
alimama_pid="mm_10249644_1605763_4929893"; alimama_titlecolor="0000FF"; alimama_descolor ="000000"; alimama_bgcolor="FFFFFF"; alimama_bordercolor="E6E6E6"; alimama_linkcolor="008000"; a
-
【DELPHI调试】-Delphi之通过崩溃地址找出源代码的出错行
Delphi之通过崩溃地址找出源代码的出错行