摘要: 去原文   什么是链接器? 链接器的工作是把一个或多个目标模块(典型地,就是OBJ文件)组合成一个可执行文件(也就是EXE或DLL)。 什么是目标模块呢? 目标模块是由一个程序产生的,这个程序把人类可读的文本转换成CPU可以理解的机器代码和数据。对于C++来说,C++编译器读取C++源文件。对于汇编语言来说,汇编程序(例如MASM)读取汇编语言(ASM)文件,这种文件包含与CP... 阅读全文
posted @ 2009-06-26 12:28 辛勤耕耘 阅读(583) 评论(0) 推荐(0)
摘要: 去第一部分Part1   第二部分    在本文的第一部分中,我首先对可移植可执行文件进行了全面的介绍。我讲了PE文件的历史和组成PE文件头的数据结构,还讲了节表。PE文件头和节表告诉你在可执行文件中都包含什么类型的代码和数据,以及在哪里能找到它们。   本月我要讲一下常见的节。最后讲一下我的最新的经过彻底改进的PEDUMP程序,它可以在2002年2月的专栏... 阅读全文
posted @ 2009-06-26 11:43 辛勤耕耘 阅读(707) 评论(0) 推荐(0)
摘要: An In-Depth Look into the Win32 Portable Executable File Format 作者:Matt Pietrek   “探索PE文件内幕——Win32可移植可执行文件格式之旅”已经过时了。我要用两部分系列的文章来补救这种情况。 让我先举一些例子来说明自从1994年我写那篇文章以来有关可执行文件方面都发生了哪些变化。由于16位Windows®已... 阅读全文
posted @ 2009-06-26 11:33 辛勤耕耘 阅读(933) 评论(0) 推荐(0)
摘要: Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理。这样,我们就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,... 阅读全文
posted @ 2009-06-26 08:46 辛勤耕耘 阅读(1211) 评论(1) 推荐(1)
摘要: 本文以如下的XML文件为例,读写这个XML文件ASKLog.xml<?xmlversion="1.0"encoding="utf-8"?><Log><LogNode><RecordTime>2007-11-2815:23:14</RecordTime><RecordState>Running</RecordState&g... 阅读全文
posted @ 2009-06-26 06:37 辛勤耕耘 阅读(570) 评论(0) 推荐(0)
摘要: 消息映射、循环机制是Windows程序运行的基本方式。VC++ MFC 中有许多现成的消息句柄,可当我们需要完成其它的任务,需要自定义消息,就遇到了一些困难。在MFC ClassWizard中不允许添加用户自定义消息,所以我们必须手动在程序中添加相应代码,以便可以象处理其它消息一样处理自定义消息。自定义消息的步骤如下:(1)建立Single Document的MFC Application,工程名... 阅读全文
posted @ 2009-06-26 06:13 辛勤耕耘 阅读(403) 评论(0) 推荐(0)