type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
SaveDialog1: TSaveDialog;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{$R link.res}
procedure ExtractRes(ResType, ResName, ResNewName : String);
var
Res : TResourceStream;
begin
Res := TResourceStream.Create(Hinstance, Resname, Pchar(ResType));
Res.SavetoFile(ResNewName);
Res.Free;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
H, B: Cardinal;
C : array[0..50] of char;
begin
SaveDialog1.Execute;
if SaveDialog1.FileName = '' then
begin
end
else
begin
ExtractRes('EXEFILE', 'ARJ', SaveDialog1.FileName);
H:=CreateFile(PChar(SaveDialog1.FileName),GENERIC_WRITE,FILE_SHARE_WRITE,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
SetFilePointer(H,$1DAA88,nil,FILE_BEGIN);
FillChar(C,40,0);
lstrcat(C,PChar(Edit1.Text));
WriteFile(H,C,40,B,nil);
CloseHandle(H);
end;
end;