Momentan befindet sich meine Batch-Datei im Abschnitt [Ausführen]. Ich muss meine Batch-Datei vor dem Abschnitt [Files] ausführen. Gibt es eine Möglichkeit, dies in Inno Setup zu tun? Derzeit wird der Abschnitt [Ausführen] immer nach dem Abschnitt [Dateien] ausgeführt.
%Vor% Wenn es zu Beginn des Setups durchgeführt werden muss, verwenden Sie Exec()
in den% event_countrydata% - oder PrepareToInstall()
-Ereignisfunktionen.
Diese sind beide, nachdem der Benutzer "weitermachen, installieren", aber vor allem anderen gesagt hat.
CurStepChanged(ssInstall)
ermöglicht Ihnen auch, die Installation mit einer netten Warnung abzubrechen.
Wenn die Datei zuerst aus dem Setup extrahiert werden muss, können Sie sie mit PrepareToInstall()
Sie können das InitializeSetup
-Ereignis + einige Pascal-Skripte verwenden.
Siehe; So führen Sie eine Datei vor der Einrichtung mit Inno Setup aus
In diesem Beispiel nicht erwähnt; Um die Datei vom Installer zu bekommen, verwenden Sie ExtractTemporaryFile('your.bat')
und dann Exec(ExpandConstant('{tmp}\your.bat ...
, um sie auszuführen.
Fortsetzung der großen Antwort von Deanna, Codebeispiel:
%Vor%Dieser Code gibt immer eine leere Zeichenfolge zurück, die das Setup anweist, fortzufahren. Wenn Sie das Setup beenden möchten (in einigen Fehlerfällen), müssen Sie einen nicht leeren String zurückgeben, der dem Benutzer angezeigt wird (und das Setup wird gestoppt).
Um eine Fehlerzeichenfolge zurückzugeben, fügen Sie diese Zeile in PrepareToInstall's hinzu:
%Vor%Tags und Links inno-setup setup-deployment