Hallo allerseits!
Gibt es eine Möglichkeit im Wartungsmodus (Betrifft: "Programm ändern") festzustellen, welche Komponenten bereits installiert sind und welche nicht?
Dankschön!
lg Sebastian
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.
Feststellen im Maintenace Modus welche ..
Started by
sebastian
, Sep 30 2002 10:09
2 replies to this topic
Posted 30 September 2002 - 10:09
Alle menschlichen Fehler sind Ungeduld,
ein vorzeitiges Abbrechen des Methodischen,
ein scheinbares Einpfählen der scheinbaren Sache.
Kafka
ein vorzeitiges Abbrechen des Methodischen,
ein scheinbares Einpfählen der scheinbaren Sache.
Kafka
Posted 30 September 2002 - 12:21
Ja, mit ComponentIsItemSelected kannst du gucken, ob was selektiert ist.
Wenn du es ganz genau haben willst, müßtest du schon mehr Aufwand treiben mit internen Listen und ner Statusverwaltung.
Marko
Wenn du es ganz genau haben willst, müßtest du schon mehr Aufwand treiben mit internen Listen und ner Statusverwaltung.
Marko
Posted 01 October 2002 - 07:55
danke marko!
ich hab es aber anders gelöst. Mir ging es darum, daß wir in unseren Setup Zusätzliche Komponenten mitliefern, die jeweils nur durch Eingabe eines Passwortes freigeschaltet werden.
Wenn ich aber nun aber Komponenten 1 schon installiert habe und die Komponente 2 hinzufügen will, muss ich für diese die Form mit der Eingabe der Serialnummer aufscheinen lassen.
Ohne eine Validierung, welche Komponente schon installiert wurde, wäre dementsprechend für jede einzelne Komponente der Serialnummerdialog gekommen. Kurz: Der Validierungsdialog soll nur auftauchen, wenn ich etwas NEU ausgewählt habe (im Wartungsmodus von Installshield)
Ich habs also so gelöst (NUR Maintenacemodus!:
anschliessend führe ich die abfrage durch OB die Komponenten VOR der Initialisierung des Dialoges SdComponentTree bereits ausgewählt waren. Wenn NICHT dann schaue ich, ob der Benutzer etwas NEUES ausgewählt hat und lade dann den Validierungsdialog.
Alles klar?
ich hab es aber anders gelöst. Mir ging es darum, daß wir in unseren Setup Zusätzliche Komponenten mitliefern, die jeweils nur durch Eingabe eines Passwortes freigeschaltet werden.
Wenn ich aber nun aber Komponenten 1 schon installiert habe und die Komponente 2 hinzufügen will, muss ich für diese die Form mit der Eingabe der Serialnummer aufscheinen lassen.
Ohne eine Validierung, welche Komponente schon installiert wurde, wäre dementsprechend für jede einzelne Komponente der Serialnummerdialog gekommen. Kurz: Der Validierungsdialog soll nur auftauchen, wenn ich etwas NEU ausgewählt habe (im Wartungsmodus von Installshield)
Ich habs also so gelöst (NUR Maintenacemodus!:
Code Sample |
Dlg_SdComponentTree: if (nType = MODIFY) then if (ComponentIsItemSelected(MEDIA, "Test") = TRUE) then MessageBox ("Komponente test ist bereits gewählt", INFORMATION); blnK1 = TRUE; else MessageBox ("Komponente test ist noch nicht gewählt", INFORMATION); blnK1 = FALSE; endif; if (ComponentIsItemSelected(MEDIA, "Example") = TRUE) then MessageBox ("Komponente Example ist bereits gewählt", INFORMATION); blnK2 = TRUE; else MessageBox ("Komponente Example ist noch nicht gewählt", INFORMATION); blnK2 = FALSE; endif; szTitle = ""; szMsg = ""; nResult = SdComponentTree(szTitle, szMsg, TARGETDIR, "", 2); if (nResult = BACK) goto Dlg_Start; Dlg_Test: if blnK1 = FALSE && ComponentIsItemSelected(MEDIA, "Test") = TRUE then intVal = GetPassword ("Test"); // Funktion die den Dialog aufruft und das Passwort zurückliefert switch (intVal) case 0: MessageBox ("Passwort falsch", INFORMATION); ComponentSelectItem( MEDIA, "Test", FALSE); case 1: MessageBox ("Passwort passt", INFORMATION); ComponentSelectItem( MEDIA, "Test", TRUE ); case 2: goto Dlg_Start; endswitch; endif; ..... |
anschliessend führe ich die abfrage durch OB die Komponenten VOR der Initialisierung des Dialoges SdComponentTree bereits ausgewählt waren. Wenn NICHT dann schaue ich, ob der Benutzer etwas NEUES ausgewählt hat und lade dann den Validierungsdialog.
Alles klar?
Alle menschlichen Fehler sind Ungeduld,
ein vorzeitiges Abbrechen des Methodischen,
ein scheinbares Einpfählen der scheinbaren Sache.
Kafka
ein vorzeitiges Abbrechen des Methodischen,
ein scheinbares Einpfählen der scheinbaren Sache.
Kafka