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

(De)select feature related to other featurestate.


3 replies to this topic

Christoph

Christoph
  • Full Members
  • 81 posts

Posted 21 December 2004 - 08:55

All,

I've a basic MSI project with following data:

My mainINSTALLLEVEL=100(default).
My setupdesign looks like this:

- FeatureA
  • FeatureA.1: InstallLevel = 0(just setting as default value)
  • FeatureA.2: InstallLevel = 0(just setting as default value)

- FeatureB
  • FeatureB.1: InstallLevel = 200
  • FeatureB.2: InstallLevel = 200
===
On feature A.1 I placed the condition "(&FeatureB.1=3) AND NOT(!FeatureB.1=3)"
On feature A.2 I placed the condition "(&FeatureB.2=3) AND NOT (!FeatureB.2=3)"

I did this with the meaning that FeatureA.1 will be installed when FeatureB.1 is selected and that featureA.2 is installed when FeatureB.2 is selected. I don't need visual feedback within the custom selection dialog since the subfeatures of feature A are unvisible but I can't manage to get it to work.

Does anyone know what I'm doing wrong here or is it simply not possible to make to different subfeateres(with different parentfeatures) dependent of each other.

Maybe it is not possible to manage this with defining conditions and that I need to write installscript but I want to hear your meaning first.

Thanks in advance for any usefull info.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 21 December 2004 - 09:07

It won't work this way.
QUOTE
The expression in the Condition column should not contain reference to the installed state of any feature or component. This is because the expressions in the Condition column are evaluated before the installer evaluates the installed states of features and components. Any expression in the Condition table that attempts to check the installed state of a feature or component always evaluates to false.

Why do you need Feature A at all? One option would be to make them sub features of the controlling feature. Another option would be to connect the components that you currently have in feature A to the appropriate features B. One component can be connected to multiple features.
Otherwise you can use control events such as AddLocal and Remove to change the feature selection (you shouldn't default their level to 0 in this case)

Christoph

Christoph
  • Full Members
  • 81 posts

Posted 21 December 2004 - 09:53

I want feature B to make my featureselection dialog more "userfriendly".
If I don't have feature B, I needed to create something like this(and this is not what I want):


FeatureA
  • Documentation
    • English
    • French
    • German
    • Japanese
    • Italian
    • Spanish
  • Tutorial
    • English
    • French
    • German
    • Japanese
    • Italian
    • Spanish

=====================================
For this reason I want my feature collection look like this:

-FeatureA
  • Documentation
    • English(=hidden)
    • French(=hidden)
    • ...
  • Tutorial
    • English(=hidden)
    • French(=hidden)
    • ...

-FeatureB
  • English
  • French
  • German
  • Spanish
  • Italian
  • Japanese

So, when the user selects EnglishFeature out of LanguagesFeature, I want that the English Subfeature out of the documentation and Tutorial features will be selected(off course only when the documentation and tutorial features are selected theirself).

Do you think this is possible to manage??

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 21 December 2004 - 10:07

If your users should be able to select multiple languages (and not just 1 out of 6) then you need to adjust the final feature selection after this dialog (on the Next button for instance) using either control events or a cuszom action. the disadvantage is that the required size display on the feature selection dialog will not be accurate.
Alternatively you could have a separate dialog for language selection that you dispplay before the feature selection dialog.
This limitation is a result of MSI's strict tree hierarchy for features.