du liest die datei die du anhängen willst erstma in einen buffer ein z.B. so
Delphi-Quellcode:
var
FS: TFileStream;
Buffer: array of char;
begin
FS := TFileStream.Create('DateiDieIchAnhängenWill.exe', fmOpenRead);
try
setlength(Buffer, FS.size);
FS.ReadBuffer(Buffer[0], FS.size);
//die komplette datei ist nun binär in Buffer
...
finally
FS.free;
end;
dann öffnest du die datei an die du anhängen willst (z.B. auch so wie oben mit nem TFileStream),
und schreibst ganz ans ende den buffer und (ganz wichtig) dahinter die größe des buffers (length(Buffer)).
das programm, an das du anhängst muß natürlich die funktionen schon beinhalten um von sich
selbst erst die größe auszulesen und dann den eigentlichen "buffer". diesen kannst du dann
wieder in eine datei auf der festplatte schreiben und dann ausführen oder was auch immer.
klingt etwas kompliziert, aber wenn man da erstma durchblickt ist es ganz einfach.