Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Rollback wenn Chained .msi abbricht?


4 replies to this topic

Franz901

Franz901
  • Full Members
  • 15 posts

Posted 13 May 2009 - 06:46

Ich habe ein MSI-Project mit mehreren Custom-Actions.

In einem setze ich via "Deferred Execution in System Context" zum Abschluss noch Registry-Keys.
Beim REMOVE werden diese Keys wieder gelöscht. Das funktioniert soweit gut.

Jetzt habe ich ein Chained .msi Package eingebunden.
...falls das Chained .msi Package abbricht wird die gesamte Installation rückgängig gemacht...

- alle Features des Hauptproduktes werden gelöscht
- die in der CA gesetzten Registry-Keys bleiben allerdings erhalten

Gibt es die Möglichkeit eine CA zu definieren, die dann durchgeführt wird,
wenn die Hauptinstallation erfolgreich war, eine Chained-Installation aber
abgebrochen wurde und daher ein ROLLBACK auslöst?

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 13 May 2009 - 09:59

Man muss zwischen Uninstall und Rollback unterscheiden.
Wir der Eintrag korrekt entfernt, wenn das Setup allein ausgeführt wird und abbricht? Dann sollte das auch chained funktionieren. Du brauchst dazu eine Custom Action vom Typ "Rollback".
Besser wäre es natürlich, die Registery-Einträge gar nicht per Custom Action zu setzen, sondern über die dafür vorgesehenen MSI-Einträge. ann kümmert sich Windows Installer selbst um das Rollback. Warum machst du das überhaupt per Custom Action?

Franz901

Franz901
  • Full Members
  • 15 posts

Posted 13 May 2009 - 10:13

Ich habe - wie schon beim InstallShield 5 - einen neutralen Überbau, der sich um die Corporate Identity kümmert.
Dazu gehören Layout und auch eine normierte Registrierung der Produkte im Registry und SMS.
Das Ganze wird über Templates generiert und verwendet...

Das man eine CA für Rollback definieren kann dachte ich mir schon.
Leider habe ich aber in der mir zur Verfügung stehenden Dokumentation keine Beispiele gefunden
WIE eine RollBack-CA zu definieren ist und an welcher Stelle in welcher Sequence sie eingefügt werden muss.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 13 May 2009 - 10:23

Es handelt sich im Prinzip ebenfalls um die CA die Deferred ausgeführt wird, aber eben mit dem Rollback-Flag versehen wird. Sie sollte unmittelbar vor der "normalen" CA eingefügt werden, mit identischer Condition. Siehe auch:
Installationsphasen und Einstellungen zur In-Script-Ausführung für benutzerdefinierte Aktionen in Windows Installer
http://www.installsi...00108/index.htm

Franz901

Franz901
  • Full Members
  • 15 posts

Posted 13 May 2009 - 12:12

Danke das war es smile.gif

Ich bin einfach nicht darauf gekommen, daß Rollback in der
In-Script-Exection gesetzt wird.

Jetzt funktioniert es wie gewünscht.