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

Deaktiviertes Feature wird trotzdem installiert


9 replies to this topic

Thorsten1977

Thorsten1977
  • Full Members
  • 13 posts

Posted 10 June 2009 - 10:34

Hallo,

in meinem Setup sind 2 Features beinhaltet. Das erste muss immer installiert werden und das zweite optional.
Standardmäßig ist das 2. abgewählt -> Installationsstufe = 101, Erforderlich = Nein

Die Eigenschaft INSTALLLEVEL steht auf 100

Ich habe zusätzlich beim Dialogfeld CustomSetup dem Button Next das Event REMOVE -> MyFeature2 -> &MyFeature2=2 hinzugefügt.

Trotzdem wird das 2. Feature immer installiert, selbst wenn ich die REMOVE-Bedingung auf 1 stelle.

Was mache ich nicht richtg?

Danke für eure Unterstützung ...

Viele Grüße
Thorsten

ali

ali
  • Full Members
  • 1,008 posts

Posted 10 June 2009 - 11:29

führst du evtl auch ein AddLocal mit einer bestimmten Bedingung auf das feature aus.

QUOTE
Button Next das Event REMOVE -> MyFeature2 -> &MyFeature2=2 hinzugefügt.

Conditional Statement Syntax
...The following table shows the feature and component state values used in conditional expressions. These states are not set until MsiSetInstallLevel is called, either directly or by the CostFinalize action.
Die Bedingung wird also in den Dialogen nicht verwendbar sein.

Wird der Installlevel in den Dialogen zb. bei ReadyToInstall noch mal gesetzt?

Hast du mal eine log Datei mit /L*V angefertigt um die Zustaände von INSTALLLEVEL zu prüfen und zu schauen was im Dialog CustomSetup passiert?

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 10 June 2009 - 12:56

Das Install-Level sollte ausreichen, auch ohne Remove Control Event (welches übrigens Remove geschrieben wird und nicht REMOVE - das macht einen Unterschied!).
Am besten schreibst du eine Logdatei um zu sehen warum das Feature doch ausgewählt wird. Evtl. hast du irgendwo ein AddLocal ALL Control Event, z.B. auf dem SetupType Dialog.

Thorsten1977

Thorsten1977
  • Full Members
  • 13 posts

Posted 10 June 2009 - 13:58

Danke für schnellen die Antworten.

Ich hab mein Setup nochmal nach AddLocal ALL durchsucht und auch gefunden. Der Dialog SetupType wird zwar nicht genutzt, ich habe die Eigenschaft dennoch auf "VaultMFG_Files" gesetzt. (Das Feature, das immer installiert werden soll).

Remove Control Event habe auch entsprechend 'Remove' geschrieben, ist ja ne Ereignis-Auswahl ;-)

Dann habe ich das Setup neu gestartet und bekomme immer noch das gleiche Ergebnis?

Hier ein Auszug aus der Logdatei:
.
.
.
Action 14:27:00: LicenseAgreement. Dialog created
MSI © (28:60) [14:27:01:359]: PROPERTY CHANGE: Modifying AgreeToLicense property. Its current value is 'No'. Its new value: 'Yes'.
MSI © (28:60) [14:27:02:328]: PROPERTY CHANGE: Adding MsiSelectionTreeSelectedFeature property. Its value is 'VaultMFG_Files'.
MSI © (28:60) [14:27:02:328]: PROPERTY CHANGE: Adding MsiSelectionTreeSelectedAction property. Its value is '3'.
MSI © (28:60) [14:27:02:328]: PROPERTY CHANGE: Adding MsiSelectionTreeSelectedCost property. Its value is '24845'.
MSI © (28:60) [14:27:02:328]: PROPERTY CHANGE: Adding MsiSelectionTreeSelectedPath property. Its value is 'C:\Programme\Autodesk\Data Management Applications\SolidWorks Addin 2010\'.
Action 14:27:02: CustomSetup. Dialog created
MSI © (28:60) [14:27:02:828]: Note: 1: 2727 2:
MSI © (28:60) [14:27:03:343]: Note: 1: 2727 2:
MSI © (28:60) [14:27:03:843]: Note: 1: 2727 2:
MSI © (28:60) [14:27:04:343]: Note: 1: 2727 2:
MSI © (28:60) [14:27:04:765]: Note: 1: 2727 2:
Action 14:27:04: ReadyToInstall. Dialog created
MSI © (28:60) [14:27:04:781]: PROPERTY CHANGE: Deleting MsiSelectionTreeSelectedFeature property. Its current value is 'VaultMFG_Files'.
MSI © (28:60) [14:27:04:781]: PROPERTY CHANGE: Deleting MsiSelectionTreeSelectedAction property. Its current value is '3'.
MSI © (28:60) [14:27:04:781]: PROPERTY CHANGE: Deleting MsiSelectionTreeSelectedCost property. Its current value is '24845'.
MSI © (28:60) [14:27:04:781]: PROPERTY CHANGE: Deleting MsiSelectionTreeSelectedPath property. Its current value is 'C:\Programme\Autodesk\Data Management Applications\SolidWorks Addin 2010\'..
.
.
.
MSI (s) (C8:14) [14:27:06:187]: PROPERTY CHANGE: Adding ADDLOCAL property. Its value is 'VaultMFG_Files,VaultMFG_Registry'.
MSI (s) (C8:14) [14:27:06:187]: PROPERTY CHANGE: Adding REMOVE property. Its value is 'VaultMFG_Jobserver'.
.
.
.
Property(S): REMOVE = VaultMFG_Jobserver
Property(S): ADDLOCAL = VaultMFG_Files,VaultMFG_Registry

Attached Images

  • Custom_Setup.png


Thorsten1977

Thorsten1977
  • Full Members
  • 13 posts

Posted 10 June 2009 - 14:51

Ich habe das Feature-Attribut "Installationsstufe" auf 0 gesetzt. Laut InstallShield-Hilfe dürfte das Feature nicht angezeigt und auch nicht installiert werden.

(If the value of the Level column in the Feature table is 0, that feature is not installed and not displayed in the UI)

Selbst in diesem Fall wird das Feature mit installiert oder verstehe ich die Logik von not installed nicht ???

ali

ali
  • Full Members
  • 1,008 posts

Posted 10 June 2009 - 14:53

QUOTE
MSI (s) (C8:14) [14:27:06:187]: PROPERTY CHANGE: Adding ADDLOCAL property. Its value is 'VaultMFG_Files,VaultMFG_Registry'.
MSI (s) (C8:14) [14:27:06:187]: PROPERTY CHANGE: Adding REMOVE property. Its value is 'VaultMFG_Jobserver'.
.
Property(S): REMOVE = VaultMFG_Jobserver
Property(S): ADDLOCAL = VaultMFG_Files,VaultMFG_Registry


Das ist schon die ExecuteSequenz, was sagt den die Aktion "InstallValidate" zu den Featurezuständen, wie ist der INSTALLLEVEL?
Wie ist eigentlich die Bedingung im Feature des Projektes die eingetragen wurde

Thorsten1977

Thorsten1977
  • Full Members
  • 13 posts

Posted 10 June 2009 - 15:08

QUOTE
Das ist schon die ExecuteSequenz, was sagt den die Aktion "InstallValidate" zu den Featurezuständen, wie ist der INSTALLLEVEL?


Action 15:46:33: InstallValidate. Validating install
Action start 15:46:33: InstallValidate.
MSI (s) (88:5C) [15:46:33:468]: Feature: VaultMFG_Files; Installed: Absent; Request: Local; Action: Local
MSI (s) (88:5C) [15:46:33:468]: Feature: VaultMFG_Registry; Installed: Absent; Request: Local; Action: Local
MSI (s) (88:5C) [15:46:33:468]: Feature: VaultMFG_Jobserver; Installed: Absent; Request: Null; Action: Null

INSTALLLEVEL ist immer auf 100

QUOTE
Wie ist eigentlich die Bedingung im Feature des Projektes die eingetragen wurde


Am Feature selbst habe ich jetzt keine Bedingung definiert, nur, zum Test, die Installationsstufe auf 0 gesetzt (Siehe vorheriger Post).

Kann es daran liegen, dass ich für die mit dem Feature verknüpften Komponenten zusätzlich eine Bedingung definieren muss, z.B. Wert der Feature-Installationsstufe?


ali

ali
  • Full Members
  • 1,008 posts

Posted 10 June 2009 - 15:11

also das Feature wird schon mal nicht installiert, etwas weiter unten müssten auch die Komponenten stehen!
Wie sind die Komponenten im Projekt eingestellt auf "optional" oder "lokal bevorzugen"?
Sind evtl Komponenten mehr als einem Feature zugeordnet?

Edited by ali, 10 June 2009 - 15:11.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 10 June 2009 - 20:39

QUOTE
MSI (s) (88:5C) [15:46:33:468]: Feature: VaultMFG_Jobserver; Installed: Absent; Request: Null; Action: Null
Demnach wird VaultMFG_Jobserver nicht installiert. Wenn du meinst, dass es doch installiert wird - woran merkst du das? An den installierten Dateien, Registry-Einträgen, ...? Dann liste mal, wie ali vorgeschlagen hat, die Component-States.

Wenn du das Setup erneust startest (z.B. aus der Systemsteuerung) und "Ändern" wählst, dann siolltest du wieder den Feature-Tree Dialog bekommen. Ist VaultMFG_Jobserver jetzt dort ausgewählt, oder immer noch mit rotem x?

Thorsten1977

Thorsten1977
  • Full Members
  • 13 posts

Posted 16 June 2009 - 11:02

@ali
QUOTE
Sind evtl Komponenten mehr als einem Feature zugeordnet?

Die Komponenten waren tatsächlich mehreren Features zugeordnet (Habe mein 1. Feature als Standard definiert und IS12 verknüpft alle neu hinzugefügten Komponenten automatisch damit).
Als ich die Geschichte bereinigt habe, wurden seltsamerweise noch 4 von 7 verknüpfte Komponenten installiert, obwohl das Feature nicht aktiviert war ???

@Stefan
QUOTE
Demnach wird VaultMFG_Jobserver nicht installiert. Wenn du meinst, dass es doch installiert wird - woran merkst du das? An den installierten Dateien, Registry-Einträgen, ...?

Das war wohl eine Fehlinterpretation von mir, denn ich dachte es würde das Feature installiert, obwohl nur die Komponenten installiert wurden (Konnte ich im Log erkennen).

Jedenfalls habe ich es nun so gelöst, dass ich bei aktivieren des 2. Features eine Eigenschaft von "No" auf "Yes" setze und diese Eigenschaft als Bedingung in den Komponenten abfrage.
Ich weis nicht, ob dies die eleganteste Lösung ist, es funktioniert jedenfalls schon mal wink.gif

Danke für eure Tips