Seite 31 von 54

Verfasst: 09.11.2006 16:36
von Thorsten1867
Deeem2031 hat geschrieben:Thorsten, du solltest das Programm nich im Temp-Ordner starten. Also die Exe kannst du ruhig da reinpacken, aber das Arbeitsverzeichnis solltest du schon in das Verzeichnis packen wo der Rest entpackt wurde. ...oder du gibst das per Parameter an das Program weiter.
Alle extern gestarteten Programme landen im Temp-Verzeichnis und werden nach Abschluss der Installation zusammen mit den anderen temporären Dateien gelöscht.
Die externen Programme habe nichts mit dem eigentlichen Programm zu tun.

Verfasst: 09.11.2006 17:45
von Deeem2031
Thorsten1867 hat geschrieben:
Deeem2031 hat geschrieben:So, habs nun doch noch hinbekommen meine Exe zu starten, aber wenn du 'ne Erklärung dazu geschrieben hättest, das 1. das ausgewählte Programm automatisch zum Paket hinzugefügt wird und 2. das, wenn man eine Datei angibt die sowieso schon in Paket enthalten ist, es dann nicht funktioniert, hätte ich es schon viel früher hinbekommen. ;)
Ähhh, ..... darf ich mal aus dem Handbuch zitieren?!? /:->
Zu startende Datei
Datei, die bei der Installation gestartet werden soll. Diese Datei muss bzw. sollte nicht im Verzeichnis mit den Programmdateien (Quellverzeichnis) liegen, da diese unabhängig vom eigentlichen Programm kopiert wird.
Benötigt das Programm eine zusätzliche Datei (z.B. *.ini oder *.wav) kann man diese über 'Datei installieren' (%SetupDir%) ins temporäre Installationsverzeichnis kopieren.
Oh, sry. Hab ich wohl überlesen.
Thorsten1867 hat geschrieben:
Deeem2031 hat geschrieben:Thorsten, du solltest das Programm nich im Temp-Ordner starten. Also die Exe kannst du ruhig da reinpacken, aber das Arbeitsverzeichnis solltest du schon in das Verzeichnis packen wo der Rest entpackt wurde. ...oder du gibst das per Parameter an das Program weiter.
Alle extern gestarteten Programme landen im Temp-Verzeichnis und werden nach Abschluss der Installation zusammen mit den anderen temporären Dateien gelöscht.
Die externen Programme habe nichts mit dem eigentlichen Programm zu tun.
Ja, schon. Aber was nützen mir die Programme, wenn ich nicht weiß wo die anderen Daten extrahiert wurden - schließlich könnte man ja noch paar Dateien kopieren wollen!?

Verfasst: 09.11.2006 17:54
von ts-soft
Vielleicht sollte Thorsten einfach eine EnvironmentVariable mit dem gewähltem SetupDir bestücken, so das man es einfach abfragen kann. Ist IMHO der einfachste Weg.

Code: Alles auswählen

SetEnvironmentVariable("EasySetupDir", SetupDir.s)
So kann z.B. Deem sein Installer diese einfach abfragen :wink:

Verfasst: 09.11.2006 20:03
von Thorsten1867
Deeem2031 hat geschrieben:Ja, schon. Aber was nützen mir die Programme, wenn ich nicht weiß wo die anderen Daten extrahiert wurden - schließlich könnte man ja noch paar Dateien kopieren wollen!?
Wenn du Dateien in das Installationsverzeichnis kopieren willst, packe sie ins Quellverzeichnis, dann landen sie automatisch dort, wo sie hingehören.

PS:
Ich habe keine Ahnung, was du da genau machst, aber ich glaube langsam, dass EasySetup der falsche Installer für deine Bedürfnisse ist. Vielleicht solltest du es mal mit InstallShield versuchen.

Verfasst: 09.11.2006 20:14
von ts-soft
Thorsten1867 hat geschrieben: Wenn du Dateien in das Installationsverzeichnis kopieren willst, packe sie ins Quellverzeichnis, dann landen sie automatisch dort, wo sie hingehören.
Er möchte bereits auf dem Computer vorhandene Dateien kopieren, braucht
aber hierfür das vom User gewählte Verzeichnis. Mit meinem obigen Tipp
kannste das ganz einfach integrieren :wink:
Die EnvironmentVariable wird autom. an seinen "Installer" weitergereicht.
EnvironmentVariablen werden an alle Prozesse, die EasySetup startet
vererbt. ohne Extra-Code.

Verfasst: 09.11.2006 20:16
von Leonhard
Thorsten1867 hat geschrieben:PS:
Ich habe keine Ahnung, was du da genau machst, aber ich glaube langsam, dass EasySetup der falsche Installer für deine Bedürfnisse ist. Vielleicht solltest du es mal mit InstallShield versuchen.
Deeem möchte warscheinlich nur PureBasic populärer machen, in dem er ein Setup verwendet, was mit PB programmiert wurde. Entweder Deeem müss sich ein anderes Setup-Erstellungsprogramm zulegen oder Thorsten möchte sich die Arbeit an seinem EasySetup ersparen.

Verfasst: 09.11.2006 20:42
von Thorsten1867
Leonhard hat geschrieben:Thorsten möchte sich die Arbeit an seinem EasySetup ersparen.
Ich möchte keine Funktionen einbauen, die nur ein einzelnen Nutzer für eine sehr spezielle Anwendung benötigt. Wenn ich das machen würde, hätte ich über kurz oder lang einen "1000FunktionenAberKeinerBlicktMehrDurch"-SetupMaker, also genau das Gegenteil von dem Konzept von EasySetup.

Bisher kann ich nicht den tieferen Sinn nachvollziehen, wozu man Funktionen braucht um mit einem Installer einen Installer zu installieren.
Sobald Deeem2031 mich von der Notwendigkeit und der allgemeinen Nützlichkeit überzeugen kann, werde ich mir die "Arbeit machen" bzw. seinen Wunsch auf meine ToDo-Liste setzen.

Verfasst: 09.11.2006 20:53
von ts-soft
Thorsten, da ist nur eine Zeile notwendig :wink: , die auch für andere nützlich sein kann :wink:

Verfasst: 09.11.2006 20:53
von Thorsten1867
ts-soft hat geschrieben:Er möchte bereits auf dem Computer vorhandene Dateien kopieren, braucht aber hierfür das vom User gewählte Verzeichnis. Mit meinem obigen Tipp kannste das ganz einfach integrieren :wink:
Die EnvironmentVariable wird autom. an seinen "Installer" weitergereicht.
EnvironmentVariablen werden an alle Prozesse, die EasySetup startet
vererbt. ohne Extra-Code.
Langsam kommt etwas Licht in die ungewöhnlichen Wünsche. Vielleicht wäre es mal eine gute Idee, etwas näher zu erläutern, was dieser Installer bewirken soll (evtl. PN).

Nach deiner Erläuterung müsste es reichen das Verzeichnis aus der Registry auszulesen, wenn ich mich nicht irre. Wenn das Programm über eine GUID verfügt wird dieser Eintrag bei der Installation angelegt.

Code: Alles auswählen

Registry: HKEY_CURRENT_USER\Software\EasySetup\{GUID}
Schlüssel: 'InstallDir'

Verfasst: 09.11.2006 21:15
von Thorsten1867
ts-soft hat geschrieben:Thorsten, da ist nur eine Zeile notwendig :wink: , die auch für andere nützlich sein kann :wink:
Zwei Zeilen! Für jeden Installer eine (Install.exe / InstallZip.exe) :mrgreen:

Gerade eingefügt. Überzeugt!
Deine Vorschläge und Codes genießen mein volles Vertrauen. Die hatten bisher immer Hand und Fuß. Nicht umsonst taucht der Name 'ts-soft' auch im Handbuch auf. Der Einbau einer Script-Sprache wird dich trotzdem wohl noch einige Jahre Überzeugungsarbeit kosten :mrgreen:

EnvironmentVariable "InstallDir" wird in der nächsten Version das Verzeichnis enthalten, in das das Programm installiert wurde.