
CLR
sunchaohuang
苦海无边,回头是岸
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CLR 托管模块介绍
托管模块(中间语言和元数据)是一个标准的32位Microsoft Windows可移植执行体(PE32)文件,或者是一个标准的64位Windows可移植执行体(PE32+)文件,他们需要CLR才能执行。 本地代码编译器生成的是一种特定的CPU架构(比如X86,X64或者IA64)专用的代码。相反所有CLR相容的编译器生成的都是“中间语言(Intermediate language ,原创 2008-07-29 11:50:00 · 1483 阅读 · 0 评论 -
PE教程1: PE文件格式一览
PE教程1: PE文件格式一览考虑到早期写的PE教程1是自己所有教程中最糟糕的一篇,此番决心彻底重写一篇以飨读者。PE 的意思就是 Portable Executable(可移植的执行体)。它是 Win32环境自身所带的执行体文件格式。它的一些特性继承自 Unix的 Coff (common object file format)文件格式。"portable executable"转载 2008-07-29 15:31:00 · 771 阅读 · 0 评论 -
PE教程2: 检验PE文件的有效性
PE教程2: 检验PE文件的有效性本教程中我们将学习如何检测给定文件是一有效PE文件。下载 范例理论:如何才能校验指定文件是否为一有效PE文件呢? 这个问题很难回答,完全取决于想要的精准程度。您可以检验PE文件格式里的各个数据结构,或者仅校验一些关键数据结构。大多数情况下,没有必要校验文件里的每一个数据结构,只要一些关键数据结构有效,我们就认为是有效的PE文件了。下面我们就来实现转载 2008-07-29 15:34:00 · 1051 阅读 · 0 评论 -
PE教程3: File Header (文件头)
PE教程3: File Header (文件头)本课我们将要研究 PE header 的 file header(文件头)部分。至此,我们已经学到了哪些东东,先简要回顾一下:DOS MZ header 又命名为 IMAGE_DOS_HEADER.。其中只有两个域比较重要: e_magic 包含字符串"MZ",e_lfanew 包含PE header在文件中的偏移量。 比较转载 2008-07-29 15:37:00 · 789 阅读 · 0 评论 -
PE教程4: Optional Header
PE教程4: Optional Header我们已经学习了关于 DOS header 和 PE header 中部分成员的知识。这里是 PE header 中最后、最大或许也是最重要的成员,optional header。回顾一下,optional header 结构是 IMAGE_NT_HEADERS 中的最后成员。包含了PE文件的逻辑分布信息。该结构共有31个域,一些是很关键,另转载 2008-07-29 15:45:00 · 1380 阅读 · 0 评论 -
PE教程6: Import Table(引入表)
PE教程6: Import Table(引入表)本课我们将学习引入表。先警告一下,对于不熟悉引入表的读者来说,这是一堂又长又难的课,所以需要多读几遍,最好再打开调试器来好好分析相关结构。各位,努力啊!下载范例。理论:首先,您得了解什么是引入函数。一个引入函数是被某模块调用的但又不在调用者模块中的函数,因而命名为"import(引入)"。引入函数实际位于一个或者更多的DLL里。转载 2008-07-29 15:57:00 · 973 阅读 · 0 评论 -
PE教程7: Export Table(引出表)
PE教程7: Export Table(引出表)上一课我们已经学习了动态联接中关于引入表那部分知识,现在继续另外一部分,那就是引出表。下载 范例。理论:当PE装载器执行一个程序,它将相关DLLs都装入该进程的地址空间。然后根据主程序的引入函数信息,查找相关DLLs中的真实函数地址来修正主程序。PE装载器搜寻的是DLLs中的引出函数。DLL/EXE要引出一个函数给其他DLL转载 2008-07-29 15:57:00 · 1084 阅读 · 0 评论 -
本地代码生成器:NGen.exe
NGen.exe工具能在两种情况下发挥重要作用:1.加快应用程序的启动速度 运行NGen.exe能加速启动速度,因为代码已经编译成本地代码,不一定非要在运行时进行编译。 2.减小应用程序的工作集 如果知道一个程序集将同时加载到多个进程或APPDomain中,那就对该程序集运行NGen.exe,可以减小应用程序的工作集。因为NGen.exe将IL编译成本地代码,并将输出保存到一个单独的原创 2008-07-29 17:40:00 · 3109 阅读 · 0 评论 -
PE教程5: Section Table(节表)
PE教程5: Section Table(节表)请下载 范例。理论:到本课为止,我们已经学了许多关于 DOS header 和 PE header 的知识。接下来就该轮到 section table(节表)了。节表其实就是紧挨着 PE header 的一结构数组。该数组成员的数目由 file header (IMAGE_FILE_HEADER) 结构中 NumberOfSecti转载 2008-07-29 15:55:00 · 1221 阅读 · 0 评论