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 mit MSMs


4 replies to this topic

vgimple

vgimple
  • Full Members
  • 9 posts

Posted 28 October 2008 - 23:08

Google und die Acresso Knowledge Base konnten mit nicht weiter helfen - aber vielleicht stehe ich auch nur mächtig auf dem Schlauch:

Ich habe ein mit InstallShield 12 erstelltes MSI Setup mit N features. Da das Produkt recht umfangreich und einigermaßen modular aufgebaut ist schien es sinnvoll die Komponenten für die jeweiligen Features auf N MSMs zu verteilen, so daß im MSI Projekt jedem Feature ein MSM zugeordnet ist das die zugehörigen Komponenten enthält. Hat soweit für Version 10.00.000 gut funktioniert.

Jetzt steht 10.01.000 vor der Tür, und die InstallShield-Projekte wurden - wo nötig - entsprechend angepaßt (vorhandene Files aktualisiert, neue Files in neuen Komponenten hinzugefügt), wobei die Regeln für Minor Upgrades eingehalten wurden
  • ProductVersion wurde angepaßt (Minor um 1 hoch gezählt)
  • ProductCode blieb gleich
  • ComponentIDs von bereits in 10.00.000 vorhandenen Komponenten wurde beibehalten
  • die bestehende Featurestruktur wurde beibehalten und durch M Subfeatures unterhalb eines bestehenden Features ergänzt
  • die KeyPath Einträge bestehender Komponenten wurden beibehalten
  • der Name der MSI-Datei wurde beibehalten

Aufgrund neuer Files sind dabei wie bereits angedeutet in einigen der MSMs neue Komponenten hinzu gekommen. Das sollte meines Wissens aber ab MSI Version 2.0 kein Problem darstellen - und gebuildet wird unser Setup für MSI 3.0 (zumindest war in einem Artikel zu lesen daß seit MSI 2.0 das hinzufügen neuer Komponenten zu bereits bestehenden Features im Rahmen eine Minor Upgrades zulässig ist - und ein MSM ist unter anderem eine Liste von Komponenten).

Was beim Setup passiert ist aber folgendes:
Wird Version 10.01.000 auf einem System installiert, auf dem vorher 10.00.000 vorhanden war, dann...
  • ... werden nur diejenigen Features installiert die bei der ursprünglichen Installation von 10.00.000 ausgewählt wurden -> steht steht im Einklang mit dem was in anderen Threads hier im Forum stand und ließe sich gegebenenfalls ändern, paßt mir aber recht gut in den Kram
  • ... werden Komponenten die zu bereits bestehenden MSMs bzw. Features hinzugefügt wurden nicht installiert sondern nur advertised - und das obwohl das entsprechende Feature auf "Disallow Advertise" gestellt wurde! Geht man nach dem Setup ins "Modify" ist das entsprechende Feature mit der gelben "1" markiert, läßt sich aber auf "install local" umstellen und nachdem das Setup dann (nochmal) durch lief dann auch die fehlenden Files da.

Punkt 2 stört sehr... Hat irgendjemand ähnliches gesehen oder eventuell sogar schon mal behoben?

Danke & Gruß

Volker


P.S.: getestet unter Windows XP SP2; eine Installation des kompletten Produkts auf einem blanken System installiert den kompletten Datei- und Funktionsumfang und funktioniert somit wie erwartet

vgimple

vgimple
  • Full Members
  • 9 posts

Posted 29 October 2008 - 13:30

Ok, ich denke ich hab das Problem behoben. In der Upgrades Tabelle hat der entsprechende Upgrade-Pfad noch gefehlt. Mea culpa... unsure.gif

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 31 October 2008 - 16:21

Die Upgrade Tabelle spielt nur bei Major Upgrade eine Rolle, also wenn der ProductCode geändert wurde.
Hast du ein Log erstellt und dort nach SELMGR Fehlern gesucht?
Sind die neuen Features auf "required" und "follow parent" eingestellt?

MegDino

MegDino
  • Full Members
  • 47 posts

Posted 17 November 2008 - 14:35

Hallo,

das klingt sehr nach dem Problem, das ich habe. Soweit ich herausgefunden habe, wurden bei mir die Features der Vergängerversion bereits Advertised installiert, wogegen die Komponenten alle lokal installiert wurden.

Es könnte also sein, dass das Setup deiner Version 10.00.000 genau das getan hat, nämlich die Features als Advertised installiert.

Aber nach einer Lösung des Problems suche ich auch noch (siehe mein Thread dazu).

vgimple

vgimple
  • Full Members
  • 9 posts

Posted 17 November 2008 - 18:29

Hi!

Erstmal vielen Dank für die Antworten und sorry daß ich so lange nicht geantwortet habe - wir hatten letzte Woche Messe und da geht's immer ziemlich zu...

@MegDino:

Die Vermutung klingt plausibel. Allerdings hatten wir in 10.00.000 alle Features auf "Disallow Advertise" gestellt (hab's nach Deinem Post auch nochmal nachgeprüft), die sollten also nicht advertised auf dem System gelandet sein. Und die 10.00.000 war die erste die wir mit MSI gemacht haben (vorher war noch IS6 im Einsatz...).
Trotzdem danke für die Anregung und viel Glück!


@Stefan Krüger

Ich glaube ich hab mich da mißverständlich ausgedrück: Gemeint ist nicht die Tabelle "Upgrade" der MSI-Datenbank, sondern die Tabelle/Liste/... die man in InstallShield unter dem Punkt "Media/Upgrades" editieren kann (in welchem Zusammenhang die beiden zueinander stehen ist mir unbekannt).

Seit ich hier die Aktualisierung als "Minor Upgrade" eingetragen und das MSI der Vorversion angegeben habe werden auch die Komponenten mit installiert die zu vorher bereits vorhandenen Features hinzu gefügt wurden.

Ein Log hatte ich, habe aber keine Fehlermeldungen drin gefunden (ich habe zwar nicht gezielt nach Fehlern von SELMGR gesucht, aber eine generelle Suche nach den üblichen Reizworten (fail, error, problem) brachte nichts). Witzigerweise war in dem Log übrigens die Property IS_MINOR_UPGRADE auf 1 gesetzt als das Problem noch auftrat.

Aber wie gesagt: Seitdem das Upgrade eingetragen ist - dies nicht zu tun war einfach nur ein dämlicher Anfängerfehler - macht das Setup was ich von ihm wollte smile.gif