Forum: Sonstige Fragen zu Delphi
by bcvs,
27. Mai 2017
Ich hatte den Anfang so verstanden, dass die Hauptinstallation auch von ihm ist.
Aber bei dem Steam-Zeugs bin ich raus.
Forum: Sonstige Fragen zu Delphi
by bcvs,
26. Mai 2017
Und noch was:
Schau dir mal die Preprocessor-Direktiven von Inno an.
Damit kannst du so etwas machen:
#ifexist "{app}\myfile.ext"
Filename: "myfile.ext"; DestDir: {app}\Subdir
#else
Forum: Sonstige Fragen zu Delphi
by bcvs,
26. Mai 2017
Noch eine anderer Lösung:
Du musst in deiner Zusatz-Installation nur die AppId auf den selben wert setzen wie in der Hauptinstallation:
AppId=selbe ID wie Hauptinstallation
Dann findet InnoSetup den Installationspfad der Hauptanwendung selbst und du kannst mit {app} darauf zugreifen.
Forum: Sonstige Fragen zu Delphi
by bcvs,
26. Mai 2017
Nein. DefaultPath ist hier leer. Da hätte man explizit einen Parameter übergeben müssen mit
DefaultDirName={code:GetRegistryPath|Parameter}
GetRegistryPath gibt also einen Leerstring zurück, worauf Innosetup wahrscheinlich das DefaultDirMane auf {app} setzen will, war wiederum zu diesem Zeitpunkt noch nicht bekannt ist.
Also mach entweder meine Lösung aus #23 oder so was:
Source:...
Forum: Sonstige Fragen zu Delphi
by bcvs,
26. Mai 2017
Ich würde es so machen:
Merk die im InitializeSetup in einem Flag, ob die Test.exe existiert.
Erzeuge dir eine benutzerdefinierte Seite im InnoSetup, die den Benutzer den zusätzlichen Pfad abfragen lässt.
In ShouldSkipPage lässt du diese Zusatzseite nur anzeugen, wenn Test.exe existiert.
In NextButtonClick kannst du den gewählten Pfad einer Variablen zuweisen.