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

Flexibeles Setup-Design (viel Text)


2 replies to this topic

Hensz

Hensz
  • Full Members
  • 23 posts

Posted 28 April 2005 - 12:26

Hi!

[Vorweg: aktuell benutze ich InstallShield DevStudio9, ich habe die Frage allerdings hier gepostet, weil ich nicht auf Lösungen mit DevStudio beschränkt bin]

Die Anforderung ist ganz simpel: Alles soll möglich sein. Aber irgendwie glaube ich, dass sich hier verschiedene Konzepte gegenseitig ausschließen. Die konkreten Wünsche:

Wir haben eine Reihe von Produkten, die der Kunde kaufen kann. Alle Produkte, die er kauft sollen durch Starten einer Setup.exe installiert werden. Der Verkäufer kann bestimmen, welche Produkte der Kunde erhält und ihm eine entsprechende CD zusammenstellen. Außerdem soll der Kunde die Möglichkeit haben, Produkte nachträglich zu kaufen und dazu zu installieren. Das ganze soll natürlich vom Aufwand her sehr einfach und übersichtlich gehalten werden, Updates, Patches und neue Versionen sollen problemlos und einfach erstellt werden können... blink.gif

Bisher habe ich folgenden Ansatz gewählt: Die einzelnen Produkte habe ich in jeweils ein Feature verpackt, dieses bekommt ein release flag. Für jede gewünschte Kombination habe ich nun ein Release erstellt, in dem ich die release flags der benötigten Features gesetzt habe. cool.gif

Damit habe ich einen Teil der Anforderung schon mal erschlagen: es müssen nur geänderte Dateien ausgetauscht werden, alle Releases neu erstellt werden, schon habe ich alle Kombinationen neu erstellt. Der Verkäufer wählt nun das entsprechende Release aus und brennt es auf CD. Der Kunde hat zudem noch die Möglichkeit, bestimmte Features nicht zu installieren, andere sind obligatorisch.

Was jedoch aus Prinzip nicht geht ist das "Nachkaufen" von Features. Hat man ein bestehendes Release installiert kann man neue Features auch dann nicht installieren, wenn man ein Release drüber installiert, das diese Features enthält (das habe ich jedenfalls durch Testen herausgefunden, vielleicht gibt es ja doch Möglichkeiten?).

Ein weiterer Nachteil dieses Vorgehens: Zur Zeit habe ich 7 Releases, das Erstellen dieser Installation dauert schon eine ganze Zeit. Für die Zukunft sind zwei weitere zusätzliche Komponenten geplant, was die Anzahl der Releases noch einmal vervierfacht, also habe ich dann 28 Versionen einer Installation. Das Erstellen ist einfach, aber wer soll das noch alles testen? Und wie lange dauert das Erstellen von 28 Releases? Alles in allem keine ideale Lösung. sad.gif

Daher hier mein Aufruf: Wer weiß eine bessere Lösung, am besten natürlich die optimale Lösung wink.gif ?

Anmerkung: Ich benötige Mehrsprachigkeit, verschiedene Custom Actions, eine einheitliche Oberfläche und minimale Benutzerinteraktion - maximal die Standard-Dialoge des Windows Installers. Alternativen zu DevStudio sind gerne gesehen!

Ciao, Hensz

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 29 April 2005 - 13:32

Wenn du für jede Release-Konfiguration einen anderen ProductCode vergbist, dann kannst du sie nebeneinander installieren.

Hensz

Hensz
  • Full Members
  • 23 posts

Posted 29 April 2005 - 13:42

Das ist aber nicht erwünscht. Gewünscht ist, dass ein Feature separat nachinstalliert werden kann, entweder als eigenständige Installation oder als Teil eines Packetes.

Als Beispiel könnte man sich vorstellen, dass MS Office auch ohne Excel verkauft. Man kann allerdings Excel auch nachträglich dazu kaufen. Entweder bietet MS nun zusätzlich zum Office mit und ohne Excel eine Installation an, die nur Excel enthält (zusätzlicher Aufwand beim Warten der Packete), oder man bekommt eine neue Version des Office-Installers, in der nun Excel enthalten ist, was man über die vorherige Version drüber installieren kann.

Die zweite Option funktioniert nicht so einfach, evt. könnte man so etwas als Upgrade hinbiegen. Das erscheint mir aber nicht als sehr sauber...

CU, Hensz