探索黑客技术攻防,实战研究与安全创新

导航菜单

快速提取程序中的设计资源

想做好一个程序,单单拥有优秀的技术是不够的,你的软件界面还必须要有友好和美观才行,有时我们还会在别人在程序上看到一些喜欢的资源,本文就告诉你,如何把它们借鉴下来。

方法一,直接提取

这是一种最不动动脑筋的方法了,发一方程序目录,找一找images pictures skins之类的目录,有的话就进去看看吧!注意有一些是自定义的格式,我们可以使用Winrar试试能不能打开。

方法二,从程序资源中提取

有很多程序在执行文件的资源段都嵌入了这些东西,这也是比较简单的一种,找个资源提取工具,打开程序,遇到图片资源就会在右边直接预览,不过需要注意的是,遇到加壳的情况,有时需要先脱掉壳才行。另外如果你看到了*.tga格式的文件,即使没出预览,也不要放过,这也是一种比较常用的图像格式。

L]2@G$4F[70Q1QVHGS]4{00.jpg

方法三,Delphi程序内嵌资源提取

Delphi的强大自不必多说,况且我就是学这个入门的,然而他的资源提取就比较繁琐了,需要详细的介绍一下,但是与之相对应的,我们可以获得非常完美的整个界面。

为了说明原理,我们先进行以下操作:建立一个VCL form工程,拖放入两个Tlmage图片控件,分别命名为Tlmage1 Tlmage2 并随意夹在两张不同的图片,保存工程。

下面我们打开工程目录下的forml.dfm,找到他们所在的位置,看到这儿你可能会忘了,这是什么意思?不就是一个普通的装机信息文件吗?没错,不过你要注意它的属性,大家也许知道在这些看似杂乱无章的数码中,储存着我们的那些图片。下面我们把Imagel.Graph中地数码复制,然后覆盖到image2的graph属性中,保存后并使用delphi,打开工程,我们会发现两个tlmage的图像已经相同了。

由此可得,delphi程序的界面完全由.DFM文件操纵,包括其中的各种图像,我们都知道,在编写一个vcl程序的过程中,一般都会生成窗体,然而在程序被编译后,储存着窗体信息的.dfm文件也会被带入到可执行文件中,也就相当于程序中的图片,控制属性,菜单等等,都被带入了文件中,下面就该动手开刀了,祭出exescape,当然使用其他的文件资源编辑器也可以,不过有的编辑器的默认设置会自动屏蔽一部分.DFM文件中的内容!需要多多注意。

使用delphi建立一个VCL Form工程,保存,翻出helloworld,使用exescape打开主程序projectl.exe,找到资源,rc数据,tformi位置,将右侧编辑框内的文本全选复制,随后找到刚才建立的工程,使用记事本打开,全选粘贴覆盖原来内容,保存,再次打开它发现窗体已经变了样。

但是,我们发现此时的控制无法删除与拖放,这又是什么原因呢!原来我们只是修改了窗体配置文件,这些控件虽然可以显示,但事实上并未声明过。解决方法很简单,新建一个窗体,调整好窗体大小后,将全部控制键复制过来即可。