- 博客(73)
- 收藏
- 关注
转载 【转】IAT 解析
关键: typedef struct _IMAGE_IMPORT_DESCRIPTOR {union {DWORD Characteristics;DWORD OriginalFirstThunk;// 指向一个 IMAGE_THUNK_DATA 结构数组的RVA}DWORD TimeDateStamp;// 文件生成的时间DWORD Forward
2014-04-13 23:16:23 1668
转载 File Offest和RVA之间的关系
1.文件偏移地址 (File Offest)数据在PE文件中的地址叫文件偏移地址,个人认为叫做文件地址更加准确.这是文件在磁盘上存放时相对文件开头的偏移.2.装载地址 (Image Base)PE装入内存时的基地址.默认情况下,EXE文件在内存中的基地址是0x00400000,DLL文件是0x10000000.这些位置可以通过修改编译选项更改.3.虚拟内存地
2014-04-13 23:15:11 823
转载 PE结构详解(二)
(六)区段与区段表前面花了很大的力气终于把复杂的PE header讲完了,在PE header紧接着的就是区段表(Secton Table),所谓的紧接着,就是一个字节也不差的意思,^_^ 还记得么?我们在很前面讲File header时,里面一个成员就是NumberOfSections,就是区段的个数,是7个,那么对应的区段表中的表项也应当有7项。
2014-04-13 23:14:45 985
转载 PE结构详解(一)
本系列主要是参考英文原本ARTeam的PE File Format Tutorial并加以注解,以最简洁的语言来阐述PE格式,帮助大家快速入门。在开始之前,请确定您懂得C语言,至少是基本数据类型、数组和结构体,以及会WinHEX的基本使用方法。任何错误都欢迎指出,感激不尽!(一)介绍PE 格式 PE格式(Portable Executable,可移植可执行文件)是原生的Win32
2014-04-13 23:14:16 1296
转载 PE结构详解
1 基本概念下表描述了贯穿于本文中的一些概念:名称描述地址是“虚拟地址”而不是“物理地址”。为什么不是“物理地址”呢?因为数据在内存的位置经常在变,这样可以节省内存开支、避开错误的内存位置等的优势。同时用户并不需要知道具体的“真实地址”,因为系统自己会为程序准备好内存空间的(只要内存足够大)镜像文件包含以EXE文件为代表的“可执行文件”、
2014-04-13 22:12:13 758
转载 Lua脚本在C++下的舞步(三)
前两天一直忙于工作,没有时间来更新,呵呵,今天赶紧补上吧。上一讲我把Lua基本的栈规则讲了一下,然后完善了一下我的CLuaFn类。让它可以支持任意参数数量和函数名称的传值。当然,这些功能是为了今天这篇文章而铺路的。看了七猫的回帖,呵呵,确实应该说一下SWIG这个工具,说真的,我对这个工具理解不深,因为没有怎么用过,读过一些关于它的文章,似乎是帮你把C++的功能封装成一个Lua基本库的东西,
2014-04-13 09:32:37 353
转载 Lua脚本在C++下的舞步(二
上一节讲了一些基本的Lua应用,或许你会说,还是很简单么。呵呵,恩,是的,本来Lua就是为了让大家使用的方便快捷而设计的。如果设计的过为复杂,就不会有人使用了。下面,我要强调一下,Lua的栈的一些概念,因为这个确实很重要,你会经常用到。熟练使用Lua,最重要的就是要时刻知道什么时候栈里面的数据是什么顺序,都是什么。如果你能熟练知道这些,实际你已经是Lua运用的高手了。说真的,第一次我接触栈
2014-04-13 09:32:15 411
转载 一步一步写算法(之 算法总结)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6993718【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 自10月初编写算法系列的博客以来,陆陆续续以来写了几十篇。按照计划,还有三个部分的内容没有介绍,主要是(Dijkstra算法、二叉平衡
2014-04-13 09:31:44 357
转载 一步一步写算法(之 最大公约数、最小公倍数)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6991770【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 求解最小公倍数和最大公约数是我们开始编程的时候经常需要练习的题目。从题面上看,好像我们需要求解的是两个题目,但其实就是一个题目。那就是
2014-04-13 09:31:31 360
转载 一步一步写算法(之 可变参数)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6989591【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 可变参数是C语言编程的一个特色。在我们一般编程中,函数的参数个数都是确定的,事先定下来的。然而就有那么一部分函数,它的个数是不确定的,
2014-04-13 09:30:45 383
转载 一步一步写算法(之 A*算法)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6982932【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在前面的博客当中,其实我们已经讨论过寻路的算法。不过,当时的示例图中,可选的路径是唯一的。我们挑选一个算法,就是说要把这个唯一的路径选
2014-04-13 09:30:24 360
转载 一步一步写算法(之克鲁斯卡尔算法 下)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6978095【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面在讨论克鲁斯卡尔的算法的时候,我们分析了算法的基本过程、基本数据结构和算法中需要解决的三个问题(排序、判断、合并)。今天,我们继续
2014-04-13 09:30:02 475
转载 一步一步写算法(之克鲁斯卡尔算法 中)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6974826【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面说到,克鲁斯卡尔的算法是按照各个line的权重依次进行添加的,那么这就涉及到一个权重的排序问题。怎么排序呢?可以采用最简单
2014-04-13 09:29:35 508
转载 一步一步写算法(之克鲁斯卡尔算法 上)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6969776【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 克鲁斯卡尔算法是计算最小生成树的一种算法。和prim算法(上,中,下)按照节点进行查找的方法不一样,克鲁斯卡尔算法是按照具体的线段进行
2014-04-12 08:17:24 601
转载 一步一步写算法(之 回数)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6965427【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 回数的概念比较好玩,就是说有这么一个字符串str, 长度为n, 现在index开始从0->index/2遍历,那么str[in
2014-04-12 08:17:09 445
转载 一步一步写算法(之哈夫曼树 下)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6963136【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面说到了哈夫曼树的创建,那下面一个重要的环节就是哈夫曼树的排序问题。但是由于排序的内容是数据结构,因此形式上说,我们需要采用通用数据
2014-04-12 08:16:51 462
转载 一步一步写算法(之哈夫曼树 上)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6960990【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在数据传输的过程当中,我们总是希望用尽可能少的带宽传输更多的数据,哈夫曼就是其中的一种较少带宽传输的方法。哈夫曼的基本思想不复杂,
2014-04-12 08:16:30 545
转载 一步一步写算法(之通用数据结构)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6957546【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 上一篇博客介绍了通用算法,那么有了这个基础我们可以继续分析通用数据结构了。我们知道在c++里面,既有数据又有函数,所以一个class就
2014-04-12 08:16:15 382
转载 一步一步写算法(之通用算法的编写)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6953562【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们写过各种各样的算法,什么排序、查找、二叉树、队列、堆栈等等。但是我们在编写这些代码的时候却都有一个缺点,不知道大家发现了没有?
2014-04-12 08:16:00 446
转载 一步一步写算法(之链表重合)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6949758【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 链表重合是一个好玩的问题。原题目是这样的:有两个链表,那么如何判断这两个链表是不是重合的?至于这个链表在什么时候重合的,这不重要,关键
2014-04-12 08:15:42 399
转载 一步一步写算法(之寻找丢失的数)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6945730【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 假设我们有一个1亿个数据,其中数据的范围是0~1亿,也就是100M的数据。但是这个数组中丢了一些数据,比如说少了5啊,少了10啊,那么
2014-04-12 08:15:26 440
转载 一步一步写算法(之prim算法 下)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6940335【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前两篇博客我们讨论了prim最小生成树的算法,熟悉了基本的流程。基本上来说,我们是按照自上而下的顺序来编写代码的。首先我们搭建一个架构
2014-04-12 08:15:09 437
转载 一步一步写算法(之prim算法 中)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6938916【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 C)编写最小生成树,涉及创建、挑选和添加过程[cpp] view plaincopy
2014-04-12 08:14:52 356
转载 一步一步写算法(之prim算法 上)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6937338【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们讨论了图的创建、添加、删除和保存等问题。今天我们将继续讨论图的一些其他问题,比如说如何在图的环境下构建最小生成树。为什么要构建
2014-04-12 08:14:36 389
转载 一步一步写算法(之函数堆栈显示)
原贴地址:【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com 】 在继续图的讨论之前,我们今天开个小差,讨论一下函数堆栈的基本原理。有过编程经验的朋友都知道,堆栈调试是我们在程序开发中经常应用的一个功能。那么大家有没有想过,函数堆栈是怎么开始的啊?其实我们可以自己写一个函数堆栈输出函数分析一下。
2014-04-12 08:14:22 393
转载 一步一步写算法(之图添加和删除)
原贴地址: http://blog.csdn.net/feixiaoxing/article/details/6926004【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们谈到的图的数据结构、图的创建,今天我们就来说一说如何在图中添加和删除边。边的添加和删除并不复杂,但是关键有一点需要记住,
2014-04-12 08:14:05 462
转载 一步一步写算法(之图的保存)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6929586【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面的几篇博客,我们对图进行基本定义,同时介绍了图的创建、图的添加和删除等。今天,我们聊一聊图是怎么在存储在外设中的。这些外接设备可以
2014-04-12 08:12:55 457
转载 一步一步写算法(之图创建)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6922766【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们讨论过图的基本结构是什么样的。它可以是矩阵类型的、数组类型的,当然也可以使指针类型的。当然,就我个人而言,比较习惯使用的结构还
2014-04-12 08:12:43 489
转载 一步一步写算法(之图结构)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6918768【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 图是数据结构里面的重要一章。通过图,我们可以判断两个点之间是不是具有连通性;通过图,我们还可以计算两个点之间的最小距离是多少;通过图
2014-04-12 08:12:18 471
转载 一步一步写算法(之“数星星”)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6917556【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 学过编程的朋友都知道,当初为了学习编程语言中的各种语法结构,我们要试着解决各种各样奇怪的题目。其中“数星星”就似乎其中的一种。什么是“数
2014-04-12 08:12:02 449
转载 一步一步写算法(之字符串查找 下篇)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6915588【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们谈到了KMP算法,但是讲的还不是很详细。今天我们可以把这个问题讲的稍微详细一点。假设在字符串A中寻找字符串B,其中字符串B的长
2014-04-12 08:11:45 382
转载 一步一步写算法(之字符串查找 中篇)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6911730【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 昨天我们编写了简单的字符查找函数。虽然比较简单,但是也算能用。然而,经过我们仔细分析研究一下,这么一个简单的函数还是有改进的空间的。在
2014-04-12 08:11:26 374
转载 一步一步写算法(之字符串查找 上篇)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6908453【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 字符串运算是我们开发软件的基本功,其中比较常用的功能有字符串长度的求解、字符串的比较、字符串的拷贝、字符串的upper等等。另外一个经
2014-04-12 08:11:13 363
转载 一步一步写算法(之链表排序)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6905260【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 相比较线性表的排序而言,链表排序的内容稍微麻烦一点。一方面,你要考虑数据插入的步骤;另外一方面你也要对指针有所顾虑。要是有一步的内容错
2014-04-11 19:19:42 494
转载 一步一步写算法(之哈希二叉树)
原贴地址:http://blog.csdn.net/feixiaoxing/article/details/6901584【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 用过平衡二叉树的朋友都清楚,平衡二叉树的最大优点就是排序。不管是在数据插入的时候还是在数据删除的时候,我们都要考虑到数据的排序情况。但
2014-04-11 19:19:22 315
转载 一步一步写算法(之二叉树深度遍历)
原贴地址: http://blog.csdn.net/feixiaoxing/article/details/6897644【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 深度遍历是软件开发中经常遇到的遍历方法。常用的遍历方法主要有下面三种:(1)前序遍历;(2)中序遍历;(3)后序遍历。按照递归的方法
2014-04-11 19:19:03 391
转载 一步一步写算法(之二叉树广度遍历)
原贴地址: http://blog.csdn.net/feixiaoxing/article/details/6897095【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在二叉树的遍历当中,有一种遍历方法是不常见的,那就是广度遍历。和其他三种遍历方法不同,二叉树的广度遍历需要额外的数据结构来帮助一下?
2014-04-11 19:18:43 434
转载 一步一步写算法(之寻路)
原贴地址: http://blog.csdn.net/feixiaoxing/article/details/6894981【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 寻路是游戏设计中需要使用到一种功能,那么我们怎么样以一个点作为起始点,快速地寻找到目标点呢?其实寻路的方法不难。一种简单有效的方法就
2014-04-11 19:18:22 501
转载 一步一步写算法(之排序二叉树的保存和加载)
原贴地址: http://blog.csdn.net/feixiaoxing/article/details/6892471【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 排序二叉树是我们开发中经常使用到的一种数据结构,它具有较好的插入、删除、查找特性。但是由于二叉树的指针较多,所以相比较其他的数据结构而言,二叉树来得
2014-04-11 19:18:03 443
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人