上一页 1 ··· 3 4 5 6 7 8 9 10 11 下一页
摘要: 一、数据传输指令───────────────────────────────────────它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.1. 通用数据传送指令.MOV 传送字或字节.MOVSX 先符号扩展,再传送.MOVZX 先零扩展,再传送.PUSH 把字压入堆栈.POP 把字弹出堆栈.PUSHA 把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈.POPA 把DI,SI... 阅读全文
posted @ 2009-06-30 21:20 辛勤耕耘 阅读(229) 评论(1) 推荐(0) 编辑
摘要: 32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和EDX)2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP)6个段寄存器(ES、CS、SS、DS、FS和GS)1个指令指针寄存器(EIP) 1个标志寄存器(EFlags)1、数据寄存器数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。32位CPU有4个32位的通用... 阅读全文
posted @ 2009-06-30 21:16 辛勤耕耘 阅读(758) 评论(1) 推荐(0) 编辑
摘要: Direct Audio摘自Direct Audio是一个复合组件,它由DirectSound和DirectMusic两个组件组成。DirectMusic在DirectX8中得到了巨大的增强,但是DirectSound基本保持原有的状态。DirectSound是主要的数字声音回放组件。DirectMusic处理所有的乐曲格式,包括MIDI、DirectMusic本地格式文件和波表文件。Direct... 阅读全文
posted @ 2009-06-29 22:43 辛勤耕耘 阅读(1086) 评论(0) 推荐(0) 编辑
摘要: SourceUrl WDM驱动程序入门(1)——HelloWDM WDM驱动程序是一种很新的东西,相信很多人都跟我一样,对它很感兴趣,但是又找不到学习的切入点。究其原因,还是因为WDM是一种非常“死板板”的程序,它一运行就是工作在系统的底层RING 0处,提供各种接口给应用程序调用。也正因为如此,它不像普通的应用程序一样,可以很快地上手—... 阅读全文
posted @ 2009-06-29 12:26 辛勤耕耘 阅读(749) 评论(0) 推荐(0) 编辑
摘要: 六大根键 注册表中的信息, 可以分为HKEY_LOCAL_MACHINE和HKEY_USERS两大类:HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG中存放的信息都是HKEY_LOCAL_MACHINE中存放的信息的一部分,HKEY_CURRENT_USER中存放的信息只是HKEY_USERS存放的信息的一部分。 注册表采用“关键字”及其&ldqu... 阅读全文
posted @ 2009-06-29 12:14 辛勤耕耘 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 在watch窗口中输入下面的内容: 1) @err,hr 显示API函数调用GetLastError的返回值,和解释 2) @eax,hr 显示eax寄存器的值,由于win的API的返回值放在eax中,所以这句话就是得到最近一个API 的返回值 3) p,***(数字) 数组指针扩展出来只有单个元素,而你又想看到全部数组元素,可以用这个技巧 4) VC调试观察窗口的格式化符号表格 符号 ... 阅读全文
posted @ 2009-06-29 11:17 辛勤耕耘 阅读(818) 评论(0) 推荐(0) 编辑
摘要: Qt的QObject 和QObjectData(句柄实体模式)去原文看看1.基类QObject:QObject是Qt类体系的唯一基类,就象MFC中的CObject和Dephi中的TObject,是Qt各种功能的源头活水[代码]设计模式: 句柄实体模式,以QObject为基类的类一般都是句柄类, 有一个指针(一般情况下这个指针还是私有的,方便以后修改句柄类的实现细节)指向一个实体类(保存全部的数据)... 阅读全文
posted @ 2009-06-28 12:16 辛勤耕耘 阅读(2422) 评论(0) 推荐(0) 编辑
摘要: 去原文   什么是链接器? 链接器的工作是把一个或多个目标模块(典型地,就是OBJ文件)组合成一个可执行文件(也就是EXE或DLL)。 什么是目标模块呢? 目标模块是由一个程序产生的,这个程序把人类可读的文本转换成CPU可以理解的机器代码和数据。对于C++来说,C++编译器读取C++源文件。对于汇编语言来说,汇编程序(例如MASM)读取汇编语言(ASM)文件,这种文件包含与CP... 阅读全文
posted @ 2009-06-26 12:28 辛勤耕耘 阅读(552) 评论(0) 推荐(0) 编辑
摘要: 去第一部分Part1   第二部分    在本文的第一部分中,我首先对可移植可执行文件进行了全面的介绍。我讲了PE文件的历史和组成PE文件头的数据结构,还讲了节表。PE文件头和节表告诉你在可执行文件中都包含什么类型的代码和数据,以及在哪里能找到它们。   本月我要讲一下常见的节。最后讲一下我的最新的经过彻底改进的PEDUMP程序,它可以在2002年2月的专栏... 阅读全文
posted @ 2009-06-26 11:43 辛勤耕耘 阅读(663) 评论(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 辛勤耕耘 阅读(869) 评论(0) 推荐(0) 编辑
摘要: Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理。这样,我们就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,... 阅读全文
posted @ 2009-06-26 08:46 辛勤耕耘 阅读(1174) 评论(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 辛勤耕耘 阅读(559) 评论(0) 推荐(0) 编辑
摘要: 消息映射、循环机制是Windows程序运行的基本方式。VC++ MFC 中有许多现成的消息句柄,可当我们需要完成其它的任务,需要自定义消息,就遇到了一些困难。在MFC ClassWizard中不允许添加用户自定义消息,所以我们必须手动在程序中添加相应代码,以便可以象处理其它消息一样处理自定义消息。自定义消息的步骤如下:(1)建立Single Document的MFC Application,工程名... 阅读全文
posted @ 2009-06-26 06:13 辛勤耕耘 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 首先,应该清楚MFC的消息循环(::GetMessage,::PeekMessage),消息泵(CWinThread::PumpMessage)和MFC的消息在窗口之间的路由是两件不同的事情。在MFC的应用程序中(应用程序类基于CWinThread继承),必须要有一个消息循环,他的作用是从应用程序的消息队列中读取消息,并把它派送出去(::DispatchMessage)。而消息路由是指消息派送出去... 阅读全文
posted @ 2009-06-25 23:41 辛勤耕耘 阅读(10054) 评论(0) 推荐(3) 编辑
摘要: Windows模块加载过程两步骤:      第一步是把EXE或DLL映射进内存。此时加载器查看模块的导入地址表(IAT)来判断这个模块是否依赖于其它DLL。如果它依赖的DLL还未被加载进那个进程,加载器也将它们映射进内存。这个过程递归进行,直到所有依赖的模块都被映射进内存。要查看一个可执行文件隐含依赖的所有DLL,最好的方法是使用Platform SDK... 阅读全文
posted @ 2009-06-25 14:08 辛勤耕耘 阅读(1817) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 下一页