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

Produktupdates und mehrere Installationen


9 replies to this topic

Jan Becker

Jan Becker
  • Members
  • 285 posts

Posted 14 March 2001 - 12:23

in meinem setup sollen mehrfache installationen pro rechner moeglich sein. dazu wird der GUID kram genutzt. das problem ist jetzt, wenn eine neue cd mit einer neuen produktversion ausgeliefert wird und die setup.exe von cd gestartet wird, kann man die neue version unabhaengig von der alten installieren, kein problem. das ist so notwendig, weil sich die hautpsetuptypen in client, server usw. splitten. diese haben wieder jeweils verschiedene auswaehlbare komponenten.

wenn ich aber in systemsteuerungen/software (hier kann ein setuptyp gepflegt werden) auf reinstall gehe, wird natuerlich nicht der scriptcode der neuen setup.exe auf cd ausgefuehrt, sondern von der urspruenglichen. das ist mein problem. hat jemand ne idee, wie man dies trotz GUID-tricks realisieren kann?


Chris

Chris
  • Members
  • 22 posts

Posted 14 March 2001 - 12:42

Ich weiß nicht ob ich das jetzt richtig verstanden hab, hast du mehrere Setupprojekte mit unterschiedlichen GUIDs, oder ist das Falsch? Ich unterstütze auch Updates und Client bzw. Client/Server. Ich hab einfach in der function OnMaintBefore, einen Anderen Dialog anzeigen lassen, Update und Deinstallation zur Auswahl. Und dann hab ich je nach Auswahl entweder ComponentReinstall(); oder ComponentRemoveAll(); aufgerufen, funktioniert einbanfrei. Du musst nur mit Dteien, die das Attribut Readonly haben aufpassen, da diese sich merkwürdiger weiße gleich ganz löschen.

Ich hoffe ich konnte dir weiter helfen.


Jan Becker

Jan Becker
  • Members
  • 285 posts

Posted 14 March 2001 - 12:56

ich habe ein setup mit einer GUID. statt der setuptypen TYPICAL, CUSTOM usw. habe ich Client, Server, Online usw.
jeder typ ist dabei wie eine eigene installation und ueberschneided sich de facto nicht mit den anderen typen. wenn eine installation gemacht wurde, muss ich in der registry die GUID umbenennen (siehe artikel), um weitere setups ohne maintenance mode zu ermoeglichen. sonst koennte nach einer client installation nie mehr der server installiert werden. gehe ich nach systemsteuerungen/software, kann ich die client oder serverkomponenten pflegen (durch kurzzeitiges zurueckbenennen der GUID). jetzt ist mein problem, kommt eine neue cd raus, mit einer neuen setup.exe und neuen dateien in den komponenten, wird das durch systemsteuerungen/software nicht erkannt, da die setup.exe aus DISK1TARGET genommen wird und nicht von CD. von CD direkt starten geht nicht, da hier nicht der maintenance mode gestartet wird (siehe oben).
na ja, im endeffekt werde ich wohl in die registry beim sichern der GUID nicht DISK1TARGET/setup.exe sondern SRCDIR/setup.exe eintragen. nur wenn die CD dann nicht  im laufwerk liegt, gibts auch wieder probleme.
falls jemand da ne coole idee oder erfahrung hat...

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 14 March 2001 - 15:07

Dein Setup auf der CD könnte nach dem Uninstall-Registry-Eintrag suchen, und dann eine List der installierten Komponenten zum Update anbieten - etwa so:
Was möchten Sie updaten?
( ) Client
( ) Server

Um das neue Skript aus der Systemsteuerung zu starten ist etwas mehr Aufwanfd nötig. (Achtung: das folgende ist nur eine spontane Idee, nicht zuende gedacht oder getestet):
Das (alte) Skript muss zuerst nachschauen, ob eine (neue) CD im Laufwerk liegt. Falls nicht: altes Skript ausführen (z.B. zur Deinstallation). Falls neue CD vorhanden ist: ein EXE starten und sofort terminieren. Das EXE wartet, bis das Setup gestprben ist, kopiert dann das setup.inx von der CD ins DISK1TARGET Verzeichnis und startet das Setup wieder (jetzt mit neuem Skript)


Jan Becker

Jan Becker
  • Members
  • 285 posts

Posted 14 March 2001 - 16:05

die frei spekulierte version gefaellt mir da besser. ich denke es so zu machen, nur dass ich nicht die inx datei kopieren brauch, sondern gleich von der CD starte. der uninstalleintrag wurde ja gerade wieder hergestellt.

das script wird doch dann auf platte durch das neue ausgetauscht, oder?

danke,
jan

(Edited by Jan Becker at 3:06 pm on Mar. 14, 2001)


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 14 March 2001 - 16:35

Quote
das script wird doch dann auf platte durch das neue ausgetauscht, oder?

Nur bei einem ComponentReinstall.


Jan Becker

Jan Becker
  • Members
  • 285 posts

Posted 15 March 2001 - 12:07

wird, wenn ich reinstalliere, der code des scripts auf CD ausgefuehrt oder der code des alten scripts und nur die datenfiles von CD gelesen?
wenn ich auf CD dateien zu einer filegroup hinzugefuegt habe, die waehrend der reinstallation gebraucht wird, sind diese neuen dateien dann dabei?


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 15 March 2001 - 12:16

Es wird das Skript ausgeführt, das im gleichen Verzeichnis steht, wie die Setup.exe die Du startest (ausser Du gibst auf der Kommandozeile ein anderes Skript an) - jedenfalls glaube ich, dass es so ist, am besten testest Du es mal. Ich gehe davon aus, dass das auch für die Component und Filegroup Definitionen gilt.

Chris

Chris
  • Members
  • 22 posts

Posted 15 March 2001 - 17:45

Ja dem kann ich zustimmen, wenn du das Setup über die CD Startest wird deren Skript ausgeführt. Ansonnsten das welches bei den Uninstall Informationen liegt. Du kannst ja noch im alten Skript prüfen, von wo aus es aufgrufen wurde. Und dann je nach dem Meldungen angeben.