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

Custom Setup Type dialog


6 replies to this topic

Dri

Dri
  • Members
  • 4 posts

Posted 20 February 2001 - 10:51

Hi,
I want to add third radio button to Setup Type dialog. When user will select this button some components shouldn't be installed.
I add this button and set its value to "Dev". I suppose that when this button is selected and user press button Next, _IsSetupTypeMin variable should change its own value to "Dev". So, if I'm thinking correct, now I'm able to change install level for some components depends on _IsSetupTypeMin settings (eg. Not _IsSetupTypeMin = "Dev" therefore set install level to 90). I don't know why it's not working. Any suggestions?

Thanks,
Darek


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 20 February 2001 - 13:55

Component and Feature conditions are evaluated during CostFinalize action.

But you can set the installlevel of the package depending on the selection (e.g. give these feature a level of 101 and set the package level to 100 if you don't want to install them).


Dri

Dri
  • Members
  • 4 posts

Posted 20 February 2001 - 14:38

It's not working. My situation looks as follows:
I've got an "Assembly" feature which contains two other features ("Core" and "Optional"). The only time, when I don't want to install  both sub-features is, when condition _IsSetupTypeMin="Dev" evaluates to True. I set install level for both features to 101 and add condition which sets install level to 100 if _IsSetupTypeMin="Dev" evaluates to true. It's not working.
I've also tried another combination (global install level is set to 100 by default): 150 and 90 with the same result :((


SteveP

SteveP
  • Members
  • 126 posts

Posted 20 February 2001 - 18:12

I am not sure which packaging program you are using, but this should work if you edit the MSI package directly using ORCA.

First, you speak of changing the install level of Components ... at install time, it is easier to change the install level of a Feature.  This is accomplished by placing your conditional expression into the Condition Table.  Assign the Components you wish to install conditionally to a Feature and list the Feature in the first column of the table ... the *new* install level in the second column ... the conditional in the third column.  Remember that the Install Level for the package will install all features with an equal or *lower* install level.  Set the default install level for your Feature to a higher number and use the Condition to set the level to a lower number to include a feature.  Set the default to a lower number and the conditional to a higher number ro exclude a feature.

The other item to confirm is that your dialog is displaying between CostInitialize and CostFinalize.  The CostInitialize action loads the Feature Table, so if you have set conditionals before that time they *may* be reset by the action.  The conditional will be evaluated by the CostFinalize action, so if your dialog deploys after that time, it will have no effect.

The standard UI that I use displays the WelcomeDlg *after* CostFinalize, so if I want to customize the Feature Install Levels, I do so through the CustomizeDlg.  In your case, you would want to reposition the WelcomeDlg to start the dialog sequence *before* the CostFinalize event.

If your Features, Components, Conditions, and UI sequence are set properly, then you may want to insert a 'debug' dialog into your dialog sequence *after* your property value is supposed to be set.  Display the value of the property in a Text box so that you can examine it and ensure that it is correct.  I would also display the value of the conditional to see that it is tracking the property.  After you get your package running, you can take the debug dialog out of the sequence.


vipul

vipul
  • Members
  • 13 posts

Posted 20 February 2001 - 22:57

Hi,
I think ,value of Installlevel should be greater than 100 to not install that component. So set the value something like 150.
I hope it may help..
Vipul

Dri

Dri
  • Members
  • 4 posts

Posted 22 February 2001 - 10:36

I use InstallShield Professional - Windows Installer Edition v. 2.01. There is a standard dialog named "SetupType". This dialog is used to switch between "Complete" and "Custom" installation. I added a third option "Dev" which sets _IsSetupTypeMin variable to "Dev". _IsSetupTypeMin is a standard variable which is set to "Typical" (it means that Complete installation will be performed) by default. I also added TextBoxes to "ReadyToInstall" and "SetupProgress" dialogs to ensure that _IsSetupTypeMin has proper values. It's true that "InstallWelcome" dialog (which in turn calls "SetupType" dialog) occours in sequence after CostFinalize, but when I moved it before CostFinalize event, installation hanged up just after "ReadyToInstall" dialog. I would like to know why (and how) "CustomSetup" works and is able to change state of features although it also runs after CostFinalize.