Empirum und For – Next Schleife

Wenn man in einem Empirum Script bzw. Paket wiederholt die gleichen Befehle ausführen möchte, sollte man sich die For … Next Schleife näher ansehen. Mit dem For … Next Konstrukt kann man für eine definierte Anzahl immer wieder die gleiche Setup.inf Sektion ausführen. In der aufgerufenen Sektion arbeitet man dann wiederum mit Variablen, die man im besten Falle mit dem Zähler verbindet.

Es gibt jedoch Besonderheiten bei diesem Befehl. Die For … Next Schleife wird beim Install als auch beim Uninstall ausgeführt und benötigt kein „-„. Beim Uninstall zählt die For Schleife jedoch „umgekehrt“. Dies ist in der Hilfe so nicht näher erläutert. Anbei findet Ihr die Erläuterung aus der Matrix42 Hilfe, als auch ein Empirum Setup.inf Ausschnitt mit zwei Beispielen.

Auszug aus der Online Hilfe

For <Var>,<LB>,<UB>,<Inc>,<Abschnitt>

Führt eine FOR-Schleife aus. Die Zählvariable ist <Var> wird von der Untergrenze <LB> zur Obergrenze <UB> in <Inc> Schritten hoch gezählt. Jedes Mal wird der Abschnitt <Abschnitt> aufgerufen. Die Zahlen dürfen auch negativ sein sowie Ober- und Untergrenze vertauscht werden (Abwärtsschleife). Wird <Inc> leer gelassen, wird 1 bzw. -1 angenommen.

Beispiel: For Counter,1,3,,UpSection

Setup.inf Beispiel

[Environment]
VALUE1=Hello
VALUE2=World
VALUE3=!

[Product]
#Set:Installation, DONTDELETE
#Set:Deinstallation, DELETE

[SET:Installation]
FOR counter,1,5,,ECHOCounter
FOR counter,1,3,,ECHOValues

[ECHOCounter]
ECHO Installation : %Counter%
-ECHO DeInstallation : %Counter%

[ECHOValues]
SET EchoVALUE=%%Value%Counter%%%
ReplaceEnv EchoValue
ECHO %EchoValue%

[SET:Deinstallation]
;--This counts from 5 to 1 during UNINSTALL!
FOR counter,1,5,,ECHOCounter
-ECHO FOR counter,1,5,,ECHOCounter

;--This counts from 1 to 5 during UNINSTALL!
FOR counter,5,1,-1,ECHOCounter
-ECHO FOR counter,5,1,-1,ECHOCounter

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert