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

Feature das standardmäßig deaktiviert ist


12 replies to this topic

Healy

Healy
  • Full Members
  • 21 posts

Posted 15 September 2006 - 15:52

Hallo

Ich versuche ein neues Feature in mein vorhandenes Setup zu integrieren, dass standardmäßig nicht mitinstalliert wird. (InstallShield 11 engl. Basic MSI)

Ich habe bereit vor einigen Monaten ein Setup mit mehreren Features veröffentlicht. Nun soll in einem Patch (Nummer 2) ein neues Feature hinzukommen. Dieses soll aber standardmäßig nicht mitinstalliert werden. Erst wenn ein User auf "Ändern" in der Softwareliste von Windows klickt, soll das Feature nachinstalliert werden können. Als Default-Wert soll aber "This feature will not be available" eingestellt sein!

Ich habe schon diverse Einstellungsmöglichkeiten versucht. Von Install Level = 101 (oder höhere Werte) bis hin zum Advertised = "Allow Advertised". Egal was ich einstelle, das Feature wird immer mitinstalliert.

Kann mir jemand sagen, warum das so ist?
Muss ich andere Propertys ändern, damit Install Level überhaupt funktioniert?

Danke bereits vorab.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 16 September 2006 - 09:24

Welchen Wert hat das Property INSTALLLEVEL im Property-manager? Hast du Required auf No gestellt?
Was sagt das Logfile zum Thema Feature-Auswahl?

Healy

Healy
  • Full Members
  • 21 posts

Posted 18 September 2006 - 08:52

INSTALLLEVEL hat den Wert 100. Hier habe ich nichts verändert. Ich glaube das ist auch der Default-Wert.

Required steht zur Zeit auf No, jedoch bin ich mir nicht mehr sicher, ob ich hier schon mal Yes versucht habe.

Ich weis leider nicht, wo ich das Logfile finde, bzw. wie ich das einschalten kann. Somit kann ich die dritte Frage jetzt nicht beantworten.

Ist es denn evtl. ein Problem, dass ich mit einem Patch ein neues Feature einführen will/muss? Ist das denn eigentlich so wie ich das in meinem ersten Post geschrieben habe, überhaupt möglich?








Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 18 September 2006 - 11:09

Ja, grundsätzlich ist es möglich in einem Patch ein Feature hinzuzufügen.

Zum Logging siehe www.msifaq.de/a/1022.htm

Schau auch mal im Patch Design auf der Registerkarte "Advanced" unter MSI Command Line Arguments. Kann sein dass InstallShield dir das automatisch ein ADDLOCAL für das neu hinzugefügte Feature reinschreibt.

Healy

Healy
  • Full Members
  • 21 posts

Posted 18 September 2006 - 13:34

Ich habe nun das Log aktiviert und nun ein 1,5 MB großes Log-File in meinem Temp-Ordner liegen. Da steht nun so viel unverständliches Zeugs (für mich als Windows-Installer-Depp) drin, dass ich nicht weis, was ich da nachschauen soll. Wenn ich nach dem Kürzel "EKA" suche, dann finde ich einge Einträge. "EKA" ist eine Abkürzung die ich als Namen in dem MSI Project für das neue Feature verwendet habe. Hier zwei Zeilen aus dem LOG:

MSI © (58:60) [14:21:46:580]: PROPERTY CHANGE: Adding EKAINTEGRATION10 property. Its value is 'C:\Inetpub\wwwroot\EkaIntegration10\'.
...
MSI © (58:60) [14:21:46:590]: PROPERTY CHANGE: Adding ADDLOCAL property. Its value is 'Eka'.


Als MSI Command Line Arguments seht der Default-Wert: REINSTALLMODE=omus REINSTALL=ALL

Das Wort ADDLOCAL kann ich hier nicht finden.


Attached Images

  • PatchDesign.JPG


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 18 September 2006 - 21:38

CODE
MSI (c) (58:60) [14:21:46:590]: PROPERTY CHANGE: Adding ADDLOCAL property. Its value is 'Eka'.
Da ist jedenfalls das Problem. Welche Aktion steht denn in der Zeile darüber? Wird ADDLOCAL vielleicht in einem Dialog gesetzt?

Healy

Healy
  • Full Members
  • 21 posts

Posted 19 September 2006 - 07:53

Hier ein paar Zeilen mehr die vor und nach dem ADDLOCAL stehen:


CODE

MSI (c) (DC:E4) [08:46:56:456]: Dir (target): Key: BIN , Object: C:\Inetpub\wwwroot\DebitexServerProxy10\bin\
MSI (c) (DC:E4) [08:46:56:456]: Dir (target): Key: AppDataFolder , Object: C:\Documents and Settings\Administrator\Application Data\
MSI (c) (DC:E4) [08:46:56:456]: Dir (target): Key: AdminToolsFolder , Object: C:\Documents and Settings\All Users\Start Menu\Programs\Administrative Tools\
MSI (c) (DC:E4) [08:46:56:456]: Dir (target): Key: ALLUSERSPROFILE , Object: C:\Documents and Settings\All Users\
MSI (c) (DC:E4) [08:46:56:456]: PROPERTY CHANGE: Adding REINSTALL property. Its value is 'Agency,Coface,DebitexServer,Maintenance,Scoring,Schufa,SalesReference,InfoScore,Dnb,CustomerReference,Crefo,Bwi,BankOnline,Bank,SchedulerService'.
MSI (c) (DC:E4) [08:46:56:456]: PROPERTY CHANGE: Adding ADDLOCAL property. Its value is 'Eka'.
MSI (c) (DC:E4) [08:46:56:506]: Disallowing installation of component: {637DBEDD-0B90-461A-A033-D509C3410471} since the keyfile exists and the component is marked to never overwrite existing installations
MSI (c) (DC:E4) [08:46:56:516]: Disallowing installation of component: {59B13EEC-E376-4259-98FF-F06BB994FF6B} since the keyfile exists and the component is marked to never overwrite existing installations
MSI (c) (DC:E4) [08:46:56:516]: Disallowing installation of component: {A34BEF38-4584-4615-BE19-162734E5D3A2} since the keyfile exists and the component is marked to never overwrite existing installations


Zu Testzwecken habe ich das REINSTALL=ALL bei "MSI Command Line Arguments" mal entfernt, jedoch funktioniert auch das nicht.




Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 19 September 2006 - 09:12

Offenbar wird ADDLOCAL in der CostFinalize Aktion gesetzt. Mir ist nur nicht ganz klar, warum. Hast du das neue Feature als Top-Level Feature hinzugefügt oder als Unterfeature? Falls letzteres: was hast du bei Remote Instalaltion eingestellt? Follow Parent?
Evtl. musst du das Feature explizit abwählen, z.B. indem du das Property REMOVE setzt, oder mit Hilfe des ControlEvent "Remove".

Healy

Healy
  • Full Members
  • 21 posts

Posted 19 September 2006 - 10:54

Da ich bis vor Kurzem noch nie was von "ADDLOCAL" gehört habe :-) kann ich ausschließen, dass ich das irgendwo manuell gesetzt habe.

Wie in dem beigefügten Bild zu sehen ist, ist "EKA" kein Top-Level Feature und es ist auch nicht "Favor Parent" eingestellt.

Ich würde dann REMOVE testen, wenn ich wüsste, wo ich das setzen soll. Ich das denn eine Condition dieses Features oder muss ich das als MSI CommandLine Argument setzen? Z.B. REMOVE=EKA.

Attached Images

  • Features.JPG

Edited by Healy, 19 September 2006 - 10:54.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 19 September 2006 - 11:09

Wie man in dem Screenshot ebenfalls sieht hat das Feature einen InstallLevel von 1. Änderst du das bitte wieder auf 101 und schreibst dann nochmal ein Log?

Healy

Healy
  • Full Members
  • 21 posts

Posted 19 September 2006 - 12:22

Und wieder die selben Zeilen:

CODE

MSI (c) (24:2C) [13:20:23:257]: PROPERTY CHANGE: Adding REINSTALL property. Its value is 'Agency,Coface,DebitexServer,Maintenance,Scoring,Schufa,SalesReference,InfoScore,Dnb,CustomerReference,Crefo,Bwi,BankOnline,Bank,SchedulerService'.
MSI (c) (24:2C) [13:20:23:257]: PROPERTY CHANGE: Adding ADDLOCAL property. Its value is 'Eka'.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 19 September 2006 - 17:15

Sorry, da fällt mir so spontan keine Lösung ein. Am bsten schaust du dir mal den Patch in Verbindung mit der alten MSI Datei an, also das resultierende Setup. Das geht z.B. mit Orca. und dort machst du mal eine Volltextsuche nach addlocal und/oder nach dem Namen deines Features.

Als Test kannst du das REMOVE mal auf der Kommandozeile beim Installieren des Patches setzen. Oder du machst es z.B. auf dem Next-Button der PatchWelcome Dialogs mit dem Control Event "Remove".

Healy

Healy
  • Full Members
  • 21 posts

Posted 20 September 2006 - 09:27

Ok. Dann sschon mal vielen Dank für die Hilfe.

Ich werde das REMOVE noch mal als Übergabeparameter testen, wenn es nichts bringt, dann lass ich das einfach so wie es ist.