infra:NET Expert
 
×
8.1 Änderungstext zum bestehenden ACIPS
Damit das bestehende Interpretersystem für die Installation eingesetzt werden konnte, musste der Hauptloop von ACIPS, der das Skript von Anfang bis einer Exit-Funktion abarbeitete, aufgebrochen werden. Dem Skripter wird damit die Möglichkeit gegeben, Daten für Dienste der InstallationsEngine bereit zu stellen, die Dienste an einer beliebigen Stelle im Skript zu starten und die Resultate auszuwerten.
Beispiel Kopieren:
Die InstallationsEngine bietet Dienste zum Kopieren von Dateien an und übernimmt das Exeptionhandling, wie z.B.  Schreibschutz der Zieldatei entfernen, Rebooten am Ende der Installation, falls eine DLL „in use“ ist, d.h. nicht ersetzt werden konnte. Der Skritpter muss nun nur Quelle, Ziel und Zeitpunkt für der Kopiervorgänge bestimmen.
Nach dem erfolgreichen Kopieren können weitere Aufgaben, wie z.B. das Setzten der Icons in der Startleiste, ausgeführt werden.
Diese Übergabe der Kontrolle vom Skripter zum aufrufenden Programm, z.B. der InstallationsEngine, war mit der alten Architektur nicht möglich.
Die folgenden Grafiken zeigen die alte und neue Architektur.
Architektur vorher
 
Das Infraprogramm erstellte eine Instanz von ACIPS und startete die Run-Methode mit Daten. Als Returnwert erhielt das infra-Programm OK oder NotOK mit einer Fehlermeldung, dabei wurde das Skript abgebrochen.
 
Architektur nachher mit LeftLoop
 
 
 
Gründe für die Erweiterung mit LeftLoop und Auslagerung der Datenbankfunktionalität
Installationsspezifische Dienste sind in der InstallationsEngine vorhanden und sind über das Interfache per LeftLoop dem Skripter zugänglich gemacht. Die bestehenden Installationsskripte können übernommen werden.
Es muss nur noch ein Quell- und Modulstand für infra:NET und das Setup gehalten und gepflegt werden.
Aufruf von Unterskripte, damit das System in einen Expertenteil und einen Anwenderteil untergliedert werden kann.
Kernsystem Module, die im Zusammenhang mit dem Datenbankobjekt geladen würden, können nicht ohne weiteres ersetzt werden, falls sie vom Setup geladen verwendet werden. Die Datenbankfunktionalität kann somit erst nach dem kopieren der Daten hinzugeladen werden.
Arbeitsplatzsetup, Installation der Präsentationsversion und der Tour benötigen keine Kernsystemfunktionalität. Es genügt die reine IPSFactory, die sehr schnell geladen wird.
Modularer Aufbau und dadurch übersichtlicher und einfacher -> weniger Hotline
Erweiterung des ACIPS (LeftLoop),
  • Kopiekonstruktoren und Insertfunktionen
  • Registrierung weiterer Skriptfunktionen
  • Erweiterung der Datenklasse und der IPSFactory für den Austausch der Daten zwischen IPSFactory und dem aufrunfenden Programm
  • Anpassung des Interfaces der InstallationsEngine