随笔分类 - Delphi-Exe
摘要:不赖猴的笔记,转载请注明出处。深入剖析PE文件PE文件是Win32的原生文件格式.每一个Win32可执行文件都遵循PE文件格式.对PE文件格式的了解可以加深你对Win32系统的深入理解.一、基本结构。上图便是PE文件的基本结构。(注意:DOS MZ Header和部分PE header的大小是不变的...
阅读全文
摘要:原理: 把需要包含的exe放入到进资源文件中,和原来的程序一起编译成一个exe文件,在程序第一次运行时释放出这个exe,然后调用这个exe文件。步骤: 1、创建rc文件。可以用任意文本编辑器来写。文件格式为:"资源名 资源类型 文件名"。对于资源类型,如果是exe文件,应该是EXEFILE,如果是二...
阅读全文
摘要:一般来说,由Delphi生成的EXE文件,要比其由它编程语言生成的体积大一些。这主要是由于使用VCL的原因(当然,VCL是有许多优点的!) 以下是减小EXE文件大小的几种途径: 01) 使用加壳工具(如 UPX,ASPack 等) 02) 使用 KOL 03) 不使用VCL来编写程序 04) 使用
阅读全文
摘要:直接上代码(这里列出C++和Delphi的代码),Delphi代码中包含导入及导出文件和函数列表,PE结构可参阅资料,很多很详细,需要注意的是,本例中是映射到内存,不是通过PE装载器装入的,所以对于节的RVA地址需要转换成为文件偏移地址。Delphi代码[delphi]view plaincopyu...
阅读全文
摘要:Delphi创建控制台(Console)程序默认是无法添加图标和版权的。经过仔细的对比窗体程序与控制台程序源码,发现窗体程序的工程文中,在uses结束begin开始的地方有一句如下代码:{$R *.res}而控制台程序的工程文件里是没有这句代码的。于是,我就在想是不是我在控制台程序的工程文件里加上如...
阅读全文
摘要://在一个exe文件中查找指定内容,找到则返回起始位置, 否则返回0//如果某字符串, 直接传入字符串进来//如果要查找16进制,则用如下格式传参进来: #$1A#$2A#$3Afunction FindString(FileName, FindStr: string): Int64;var Fi...
阅读全文
摘要:Delphi遍历进程中所有Class的TypeInfo,即便是在implementation中的class或者其他 class的private的子class. 一般普通EXE中的TypeInfo存放在PAGE_EXECUTE_*的内存中,而BPL则存放在PAGE_READ_WRITE的内存中...
阅读全文
摘要:function ExecShowModal(APath: PChar; ACmdShow: Integer; ATimeout: Longword): Integer;var vStartupInfo: TStartupInfo; vProcessInfo: TProcessInformati...
阅读全文
摘要:1.程序窗口[chuang kou]句柄[ju bing]检测原理:用FindWindow函数[han shu]查找[cha zhao]具有相同窗口[chuang kou]类名和标题的窗口[chuang kou],如果找到就说明[shuo ming]有OD在运行[yun hang]//*******...
阅读全文
摘要:前言:对于Delphi在编译时对代码所做的工作,大部分使用ObjectPascal之类的高级语言的程序员并不是很熟悉。如果你对汇编程序以及EXE文件格式有一点基本认识,那么源代码里包含的注释将把一切解释得非常清楚。另外,我还要说明一下源代码在编译时被做了什么处理。我对汇编程序以及EXE文件格式的认识...
阅读全文
摘要:右击里面有修改 点开直接修改就可以了吧。 DELPHI 里程序的版本信息怎么是灰色的,无法更改 耐心读以下说明,应该能解决你的问题,如果不能解决,请Hi我~ 如何给自己的dll文件添加版本信息呢? 首先建立一个文件后缀为.rc(以ver.rc为例),用记事本打开,拷贝下面内容: ("//"号为注释,
阅读全文
摘要:DelphiXE2内存加模块升级版.支持32位和64位模块.已转至新的博客 http://www.raysoftware.cn/?p=51很多年以前写过内存加载DLL的一片技术.http://blog.csdn.net/wr960204/article/details/2134157上几天有人说找遍...
阅读全文
摘要:windows似乎只提供了一种启动进程的方法:即必须从一个可执行文件中加载并启动。而下面这段代码就是提供一种可以直接从内存中启动一个exe的变通办法。用途嘛,也许可以用来保护你的exe,你可以对要保护的exe进行任意切分、加密、存储,只要运行时能将exe的内容正确拼接到一块内存中,就可以直接从内存中...
阅读全文
摘要://从内存中加载DLL DELPHI版 unit MemLibrary; interface uses Windows; function memLoadLibrary(pLib: Pointer): DWord; function memGetProcAddress(dwLibHandle: DW
阅读全文
摘要:WIN32的时空观摘自第三章,写的真好,只可惜不知道为什么没有把书写完,唉!真是字字珠玑:1. 在Windows下,同一程序可以同时有两个以上的副本在运行,每一个运行的程序副本就是一个进程。更确切地说,任何程序的一次运行就产生一个任务,而每个任务就是一个进程。一个典型的程序是由一个EXE文件或一个E...
阅读全文