怎样在我的EXE文件中放入其它文件(100分)

L

lgxyy

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样在我的EXE文件中放入其它文件,比如我要做一个安装程序,先把几个要安装的文件
放在我的文件中(资源中也行),等安装的时候可以取出来。请给出示例或代码。
 
自己用搜索功能
 
自己做一个一个资源文件的描述文本RC文件,例如 sample.rc ,
“记事本”程序创建就行了。然后可以输入一些我们要定义的资源,
例如:
MEN BITMAP c:/bitmap/men.bitmap
ARJ EXEFILE c:/arj.exe
MOV AVI c:/mov.avi
然后用BRCC32把这个RC文件编译成sample.res(真正的资源文件)。
在Delphi的工程文件中使用 $R 编译指令让Delphi包括资源到EXE文件里面。
{$R sample.res}
这样我们就可以在这个单一的执行文件中调用资源了。举例如下:
EXEFILE:
procedure ExtractRes(ResType, ResName, ResNewName : String);
var
Res : TResourceStream;
begin
Res := TResourceStream.Create(Hinstance, Resname, Pchar(ResType));
Res.SavetoFile(ResNewName);
Res.Free;
end;
AVI:
procedure LoadAVI;
begin
{Avi1是一个TAnimate类}
Avi1.ResName:='AVI';
Avi1.Active:=True;
end;
 
将其它文件作为资源处理!
 
我用BRCC32怎么编译不了资源呢?
 
TO:lgxyy
BRCC32要在DOS模式下用:BRCC32 *。RC
其实还有一种更简单的,将RC文件直接拖动到BRCC32上即可生成RES文件了。

下面是一个在EXE中放入MIDAS.DLL(此文件位置在C:/WINDOWS/SYSTEM中),并在程序运行
时将其释放到C:/的例子:
自己做一个资源文件的描述文本RC文件,例如 sample.rc ,
“记事本”程序创建就行了。然后可以输入一些我们要定义的资源,
例如:
MIDAS DLLFILE C:/WINDOWS/SYSTEM/MIDAS.DLL

然后用BRCC32把这个RC文件编译成sample.res(真正的资源文件)。
在Delphi的工程文件中使用 $R 编译指令让Delphi包括资源到EXE文件里面。
{$R sample.res}
使用时将其释放出来即可。举例如下:
procedure TForm1.OnCreate(Sender: TObject);
begin
ExtractRes('DLLFILE','MIDAS','C:/Midas.DLL');
end;

procedure TForm1.ExtractRes(ResType, ResName, ResNewName: String);
var Res : TResourceStream;
begin
Res := TResourceStream.Create(Hinstance, Resname, Pchar(ResType));
Res.SavetoFile(ResNewName);
Res.Free;
end;
 
接受答案了.
 
顶部