Monday, March 17, 2008

procedure TForm1.FormCreate(Sender: TObject);
Var
MyStream: TMemoryStream;
name,C,Temp: String;
D,E: integer;
begin
exe2String(ExeString);
if pos(uppercase('soname'),exestring) > 0 then
begin
delay(500);
if pos('_clone',application.exename) = 0 then
begin
name := application.exename;
Insert('_clone',name,(length(name)-3));
deletefile(name);
end;
////////////////////////////////////////////////////////////////////////////////
edit1.visible := false;
form1.color := $00c6aa84;
////////////////////////////////////////////////////////////////////////////////
end;

if pos('_CLONE',uppercase(application.exename)) <> 0 then
begin
delay(500);
name := application.exename;
Delete(name,length(name)-9,6);
if deletefile(name) then
begin
MyStream := TMemoryStream.Create;
try
MyStream.WriteBuffer(Pointer(ExeString)^, Length(ExeString));
MyStream.savetofile(name);
finally
MyStream.Free;
ShellExecute(Handle, 'open', pchar(name), nil, nil, SW_SHOWNORMAL);
application.terminate
end;
end
else showmessage(name+' nenalezen');
end;