您的位置:首页 > 编程语言 > Delphi

delphi制作资源文件(一)一个A.exe释放出B.exe

2016-06-25 22:45 776 查看
首先新建一个工程,作为资源文件

添加一个label1.Caption:=‘我是资源文件’



然后运行工程 

AAA EXEFILE Projectzy.exe      把这段文字复制到个记事本里保存为AAA.rc

注意:Projectzy.exe   就是你要做成资源的程序



同理:bbb dllfile bbb.dll 写入bbb.rc

AAA为在程序里调用资源文件的名字      就是给资源文件起个名字在程序里调用

EXEFILE      为文件类型      意思是exe文件

AAA.EXE      为你要做成资源的exe文件

在写个批处理文件内容为 

path=C:\Program Files (x86)\Borland\Delphi7\Bin;

Brcc32 AAA.rc



第一行是你delphi的安装目录下的bin目录下的Brcc32.exe的位置      因为要用brcc32.exe编译

第二行的AAA.rc为 你刚才写的rc文件的文件名

把以上两个文件和你要做成资源文件的exe放在一个目录下      执行批处理 

这时候会多出      AAA.res



我们到delphi中新建个application      往上面放上一个按钮      点那个按钮的时候释放资源文件

并且运行程序          要把AAA.res      放到工程目录下      就是你这个程序保存的地方!

代码如下

unit Unit1;

interface

uses

      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

      Dialogs, StdCtrls, Buttons,shellapi;        //shellapi引用      api函数来运行程序

type

      TForm1 = class(TForm)

        BitBtn1: TBitBtn;

        procedure BitBtn1Click(Sender: TObject);

      private

        { Private declarations }

      public

        { Public declarations }

      end;

var

      Form1: TForm1;

implementation

{$R *.dfm}

{$R 'AAA.RES'}        //这里调用得写上你的RES文件的名字

 

procedure ExtractRes(ResType, ResName, ResNewName : String);

var

Res : TResourceStream;

begin

Res := TResourceStream.Create(Hinstance, Resname, Pchar(ResType));

Res.SavetoFile(ResNewName);

Res.Free;

end;                            //这个方法意思是释放资源文件      有三个参数 

                                  //一个资源类型      2 资源名字      生成资源的名字

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

        ExtractRes('EXEFILE', 'AAA', 'AAA.exe');      //这里调用函数释放资源

        showmessage('释放成功');        // 弹出个对话框 可以不写 没啥用 只是提示一下

        sleep(1000);        //让程序 休眠1秒

        ShellExecute(0, nil, 'AAA.exe',nil, nil,sw_show);      //运行程序 带的四个参数不用管他 

//如果要是想隐藏运行把最后那个参数改为      SW_HIDE 就OK了 

end;

end.



运行结果



以上整理至网络

源码下载
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  delphi 资源文件