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