Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Eigenes Setup programmieren

SpectreDragon / 6 Antworten / Baumansicht Nickles

Hi all,

kann mir jemand hier sagen, wie ich unter C++ ein eigenes Setup programmieren, wobei die zu extrahierenden Dateien in der Setup-Exe eingebunden werden sollen.
Es können auch MFC-Dlls verwendet werden.

thx

bei Antwort benachrichtigen
Borlander SpectreDragon „Eigenes Setup programmieren“
Optionen
ein eigenes Setup programmieren
Warum kannst Du nicht einfach ein Tool wie Install-Shield dafür benutzen?
bei Antwort benachrichtigen
Andreas42 SpectreDragon „Eigenes Setup programmieren“
Optionen

Hi!

Die nächste Frage wäre "Wo ist das Problem?". ;-)

Ein Setup-Program macht ja nichts anderes als Daten von Stelle A nach Stelle B zu kopieren (gesteigerter Schwierigkeitsgrad: A ist eine Datei und B ein Verzeichnis; das ist aber auch kein echtes Problem) und danach evtl. noch einige Registry-Einträge zu ssetzen (dafür gibt's API-Funktionen, die garantiert in der MFC gekapselt sind (dort als Methoden bereitstehen).

Bis denn
Andreas

Hier steht was ueber mein altes Hard- und Softwaregedoens.
bei Antwort benachrichtigen
SpectreDragon Nachtrag zu: „Eigenes Setup programmieren“
Optionen

Das Problem ist, dass ich nicht weiß, wie ich Dateien in eine exe Datei einbinde und wieder extrahiere, der Rest is mir auch völlig klar (hätte ich vielleicht noch deutlicher erwähnen sollen)

Ein Tool wie InstallShield benutze ich nicht, weil es für meine Zwecke viel zu umfangreich ist und somit auch mehr Ram braucht und eine höhere Ladezeit hat

bei Antwort benachrichtigen
Andreas42 SpectreDragon „Das Problem ist, dass ich nicht weiß, wie ich Dateien in eine exe Datei...“
Optionen

Hi!

Zu DOS-Zeiten reichte es, die Daten per COPY-Befehl (mit Schalter für Binär-Daten) aneinander zu kopieren. Der EXE-Header enthält eine Längenangabe seiner Datei, die beim Aneinanderfügen nicht geändert wird. Das Setupprogramm muss sich dann selbst als Datei öffnen, den EXE-Header auslesen und dann entsprechend die notwendige Anzahl an bytes überlesen. Ob das bei Win32-EXEs noch geht, weiss ich nicht, da müsste man sich Info über den Aufbau der Win32-EXE-Dateien besorgen.

Ich finde das aber für ein einfaches Setup-Programm zu kompliziert. Ich würde die zu installierenden Datein in eine Kontainerdatei packen (falls das wirklich nötig ist) und dann mit dem Setupdatei ausliefern.

Noch einfacher ist ein ZIP-Archiv zu nutzen, mit einem ZIPper, der in der Lage ist, bei Ausführen der Ergzeugten Archivdatei ein Programm, dass daraus entpackt wurde zu starten. Nicht unbedingt elegant, aber es funktioniert offensichtlich (ich hab' das nie für meine Tools genutzt, aber es begegnet mir oft bei der Installation von kleineren Programmen).

Bis denn
Andreas

Hier steht was ueber mein altes Hard- und Softwaregedoens.
bei Antwort benachrichtigen
mr.escape SpectreDragon „Das Problem ist, dass ich nicht weiß, wie ich Dateien in eine exe Datei...“
Optionen

Nimm doch sowas wie das hier:http://nsis.sourceforge.net/site/index.php.
Die ladezeiten und der speicherverbrauch sollten den meisten keine probleme bereiten (zx80 benutzer mit halbiertem ram und reduziertem takt könnten sich evtl. beschweren, andere wohl kaum ;) )

mr.escape

"The man who trades freedom for security does not deserve nor will he ever receive either." - Benjamin Franklin"Wer seine Freiheit aufgibt, um Sicherheit zu erreichen, wird beides verlieren." - Georg Christoph Lichtenberg
bei Antwort benachrichtigen
SpectreDragon mr.escape „Nimm doch sowas wie das hier:http://nsis.sourceforge.net/site/index.php. Die...“
Optionen

thx und sogar open-source.
werd mir das ma genauer angucken, vielleicht hilft es mir ja auch bei
nem eigenen.

bei Antwort benachrichtigen