Einzelnen Beitrag anzeigen

Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#9

Re: Aus laufender Anwendung Exe Datei erstellen

  Alt 28. Dez 2007, 12:57
Ganz primitiv könntest du es ungefähr so machen:

Du hängst an den Installer die zu installierenden Daten an, zum Beispiel mit TFileStream. Nach dem bearbeiten sollte deine Exe dann so aussehen:
[EXE-Datei Installer][Datei2][Größe Datei2][Datei1][Größe Datei1]

Also direkt hinter der Original-Exe hängt Datei2, dahinder die Größe von Datei2, dann das selbe für Datei1.

Wenn dein Installer jetzt das Programm installiert, öffnet er sich selber (Application.Exename) und öffnet auf sich selber einen TFilestream (fmOpenRead mit fmShareDenyWrite glaube ich, ist vielleicht auch falsch). Der FileStream geht nach hinten (.Position := .Size), geht dann 4 Bytes nach vorne (.Position := .Position - SizeOf(Integer)) und ließt einen Integer aus, dann weiß er hier die Größe von Datei1, die ja ganz hinten steht. Dann spult er die eben eingelesenen 4 Bytes (SizeOf(Integer)) wieder zurück und dazu noch die Größe von Datei1, die eben ausgelesen wurde. Dann ließt Du soviel Bytes ein, wie dir die zuerst gelesene Größe gesagt hat. Schwupp, da hast du deine Datei. So machst du dann für alle Dateien weiter.

Das ganze ist natürlich stark verbesserungswürdig (Kompression..) aber so könnte man es ganz schlicht machen...

HTH
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat