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

Minor Upgrade nicht zulassen


4 replies to this topic

Holger_G

Holger_G
  • Full Members
  • 155 posts

Posted 23 September 2009 - 10:34

Hallo,

ich möchte ein Minor Upgrade (volle Installation) für bestimmte Versionen nicht zulassen. Normalerweise kann man dafür ja die 'Upgrade' Tabelle nutzen, allerdings handelt es sich unter Umständen um die gleiche ProductVersion. Dann wird die 'Upgrade' Tabelle nicht funktionieren, korrekt?
Wie kann ich das am einfachsten realisieren? Vermutlich nur mit einer Custom Action oder gibt es evtl. noch weitere Möglichkeiten?

Danke
Holger




Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 23 September 2009 - 14:38

Beim Minor Upgrade (also gleicher ProductCode) wird die Upgrade Tabelle nicht verwendet - auch wenn die ProductVersion geändert ist.

Kannst du mal ein Beispiel schreiben, was du machen willst? Soll verhindert werden, dass Version 1.2 über 1.0 installiert wird, aber das Update von 1.1 auf 1.2 soll möglich sein?

Holger_G

Holger_G
  • Full Members
  • 155 posts

Posted 23 September 2009 - 14:45

Wir haben 2 beta Versionen veröffentlicht. Für diese Versionen soll das Minor Upgrade der offiziellen Release Version dann verhindert werden.

z. B.
6.2.0.400 (beta 1)
6.2.0.438 (beta 2)
6.2.0.500 (Release)

6.2.0.500 soll sich dann nicht über die beiden beta Versionen installieren lassen.

Ich habe nun folgendes gemacht:
Via AppSearch lese ich ein Registry Value der installierten Version aus und setze eine Property. Diese Property verwende ich dann im SetupResume Dialog und zeige einen anderen Text an und beende das Setup, falls eine installierte beta Version erkannt wird. Eine andere Lösung fiel mir jetzt auf die Schnelle nicht ein.

Ich könnte doch auch eine MessageBox via InstallScript CA anzeigen und das Setup dann beenden? Nur wie kann es es innerhalb der InstallScript CA beenden? Über den return Wert? Oder kann man einfach die 'exit' oder 'abort' IScript Funktion verwenden?

Edited by Holger_G, 23 September 2009 - 15:19.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 24 September 2009 - 07:33

Du kannst eine Custom Action Typ 19 (Fehlermeldung anzeigen) einfügen. Die zeigt eine Messagebox an, trägt den Fehler auch im Log ein, und beendet das Setup dann.

Denkbar wäre evtl. auch, den ProductCode zu ändern. Dann wäre es ein Major Upgrade, das du entweder verhindern kannst oder die Beta-Version automatisch deinstallieren kannst.

Holger_G

Holger_G
  • Full Members
  • 155 posts

Posted 24 September 2009 - 10:05

QUOTE (Stefan Krueger @ 2009-09-24 07:33)
Du kannst eine Custom Action Typ 19 (Fehlermeldung anzeigen) einfügen. Die zeigt eine Messagebox an, trägt den Fehler auch im Log ein, und beendet das Setup dann.

Danke dafür, in Bezug auf MSI kann man doch immer wieder dazu lernen smile.gif Ich verwende nun eine CA Typ 19.

QUOTE

Denkbar wäre evtl. auch, den ProductCode zu ändern. Dann wäre es ein Major Upgrade, das du entweder verhindern kannst oder die Beta-Version automatisch deinstallieren kannst.

Ja, ich hatte erst überlegt, nur die beta Versionen mit einem anderen ProductCode zu erzeugen. Es gibt bereits 6.0.0 und 6.1.0 Releases die weiterhin via Minor Upgrade und Patches geupdated werden können, daher kommt ein Major Upgrade nicht in Frage.