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

Passwortabhängiges Installieren von Features


10 replies to this topic

Sunflower84

Sunflower84
  • Full Members
  • 121 posts

Posted 27 April 2009 - 12:16

Hallo

Ich habe ein CustomSetupDialog. In diesem Dialog sollen nicht alle Features angezeigt werden. Vor diesem Dialog habe ich einen Dialog wo man ein Passwort eingeben kann. Nur mit einem bestimmten Passwort kommt man auf den nächsten Dialog (CustomSetup). Ich hätte aber gerne, dass es mehrere Passwörter gibt. Zu jedem Passwort eine andere Kombination von Features.
Ich habe jetzt im CustomSetup Dialog, im Verhalten "Tree" folgendes eingegeben was aber leider nicht funktioniert:
Ereignis: AddSource
Argument: Feature
Bedingung: _PasswordProperty= "Passwort"
(Password_Property ist die Eigenschaft meines Textfeldes wo das Passwort eingegeben wird.)

Geht das vielleicht doch anders?

Liebe Grüße
Nadine


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 29 April 2009 - 18:03

Um ein Feature unsichtbar zu machen, kann man seinen Level über Feature-Bedingungen auf 0 setzen. Das Problem ist, dass diese Bedingungen während CostFinalize ausgewertet werden. D.h. man muss das Passwort vor allen anderen Dialogen abfragen und der Benutzer kann auch nicht zum Passwort-Dialog zurückkehren.

Sunflower84

Sunflower84
  • Full Members
  • 121 posts

Posted 05 May 2009 - 09:23

Das der Benutze nicht zum Passwort Dialog zurück kommen kann ist kein Problem. Habe das mit der Bedingung versucht aber leider klappt es nicht.
Alle Features haben als Installationsstufe den Wert "1".
Habe jetzt bei einem Feature folgende Bedingung hinzugefügt:

Ebene: "0"
Bedingung: _PasswordProperty = "Pw1"

(_PasswordProperty=Textfeld zur Passworteingabe)

Eigentlich sollte doch jetzt das Feature nicht angezeigt werden wenn ich dieses Passwort eingebe, oder?

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 08 May 2009 - 08:40

Ja. Und der Passwort-Dialog wird vor CostFinalize angezeigt? Dann schreib mal eine Logdatei um zu sehen, was wirklich abläuft (Wert des Passwort-Properties usw.) und in welcher Reihenfolge.

Sunflower84

Sunflower84
  • Full Members
  • 121 posts

Posted 08 May 2009 - 09:32

Wo sehe ich denn CostFinalize? Meinst du das unter Sequenzen?
Dort steht bei Installation unter anderem CostFinalize Sequenznummer 1000.
Mein PasswordDialog ist eine Untersequenz von InstallWelcome und hat die Sequenznummer 1210. Kommt also nicht vor CostFinalize. Ist es das was du meinst? Muss ich jetzt einfach nur die Sequenznummer ändern?
Liebe Grüße
Sunflower84

Edited by Sunflower84, 08 May 2009 - 09:34.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 08 May 2009 - 09:57

QUOTE
Wo sehe ich denn CostFinalize? Meinst du das unter Sequenzen?
Dort steht bei Installation unter anderem CostFinalize Sequenznummer 1000.
Ja, genau das.

QUOTE
Mein PasswordDialog ist eine Untersequenz von InstallWelcome und hat die Sequenznummer 1210. Kommt also nicht vor CostFinalize. Ist es das was du meinst?
Ja.

QUOTE
Muss ich jetzt einfach nur die Sequenznummer ändern?
Du musst deinen Passwort-Dialog aus der InstallWelcome-Dialogabfolge herausnehmen und als eigenständigen Dialog in die InstallUI Sequenz einfügen (so ähnlich wie InstallInitialize). Ich würde ihn vor CostInitialize einbaunen, er muss aber auf jeden Fall vor CostFinalize kommen.
Die Sequenznummer von CostFinalize solltest du nicht ändern.

Sunflower84

Sunflower84
  • Full Members
  • 121 posts

Posted 08 May 2009 - 12:07

Klappt irgendwie nicht :-(

Hab unter Sequenzen-> Installation -> Benutzeroberfläche jetzt einen eigenständigen Passwort Dialog. Doch wiederum ein untergeordnetes CustomSetup. Was ich auch nicht weg bekomme weil ich den CustomDialog über den Next Button im Passwort Dialog aufrufe. Sequenznummer habe ich jetzt beim PasswortDialog 991 und das InstallWelcome auf 990. CostFinalize steht auf 1000. Hab ich noch was vergessen?

Liebe Grüße
Sunflower84

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 09 May 2009 - 14:31

Das CustomSetup bekommst du weg, indem du das Behaviour des "Next"-Buttons auf dem Passwort-Dialog bearbeitest.

InstallWelcome bzw. insbesondere alle Dialoge die eine Feature-Auswahl beinhalten (Setup-Typ, Custom Setup u.ä.) müssen *nach* CostFinalize bleiben.

Also: Passwort vor Costing (CostInitialize ... CostFinalie), InstallWelcome danach.

Sunflower84

Sunflower84
  • Full Members
  • 121 posts

Posted 11 May 2009 - 08:02

Wenn ich das Behaviour vom Next Button weg mache, springt er nicht mehr zum CustomDialog. Wie bekomme ich das denn ohne das Behaviour hin?
Mein Welcome Dialog muss auch noch vor dem PasswortDialog erscheinen.
CostFinalize hat die Sequenznummer 1000. Mein PasswortDialog hat 991. Kommt also vorher. Aber ohne den Behaviour springt er nicht zum CustomDialog.


Sunflower84

Sunflower84
  • Full Members
  • 121 posts

Posted 12 May 2009 - 08:09

Ich habe keine Ahnung wie ich das ohne das Behaviour des Next Button machen soll. Wenn ich den Behaviour entferne reagiert wird der CustomDialog nicht aufgerufen. Hab jetzt mal ein Screenshot meiner Sequenzen gemacht. vielleicht ist da ja noch ein Fehler. Der erste Dialog ist "Welcome" und danach wird der PAsswortDialog aufgerufen und dann CustomSetup.

Attached Images

  • Sequenzen.jpg


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 13 May 2009 - 09:51

Die Dialoge werden normalerweise per Behaviour der jeweiligen Next-Buttons aufgerufen. So ergibt sich die Reiehenfolge der DIaloge. er erste Dialog (InstallWelcome) wird in die Sequenz eingefügt, so dass er vom Installer angezeigt wird. Der InstallWelcome ruft dann z.B. den Next-Button-Behaviour den Lizenz-Dialog auf usw. bis alle Dialoge durch sind. Dann geht es mit der nächsten Aktion in der Sequenz weiter.
Soweit der Normalfall. Du willst aber den Passwort-Dialog (oder zusätzlich auch den Welcome-Dialog) aus dieser Dialog-Abfolge heraunehmen. Dazu änders du die Behaviour der vorhegehenden Dialogs (natürlich immer dran denken, auch die Back-Buttons entsprechend anzupassen). Und du willst den Passwort-Dialog (bzw. Welcome + Passwort) als eigenständige Dialogfolge vor Costinalize ienfügen. Also z.B.

vorher:
...
CostInitialize
...
CostFinalize
...
InstallWelcome > Lizenzbedingungen > Passwort > Setup-Typ > Custom Setup > ...
...

nachher:
...
InstallWelcome > Passwort
...
CostInitialize
...
CostFinalize
...
Lizenzbedingungen > Setup-Typ > Custom Setup > ...
...