So there isn't a simpler solution?
 
All I want to do is have access to a "variable", in this case myFeature from 
another file.
 
> Date: Mon, 15 Sep 2014 09:21:00 -0400
> From: yellowjacketl...@gmail.com
> To: wix-users@lists.sourceforge.net
> Subject: Re: [WiX-users] Check that at least one Feature is selected
> 
> I solved this same issue with a custom action on the next button of the
> feature selection dialog.  I tried solving it within Wix/Windows Installer
> but was unable to.
> 
> The pseudo-code is something like this...
> 
>       <Publish Dialog="CustomizeDlg" Control="Next" Event="DoAction"
> Value="CAMustSelectOne" Order="1">1</Publish>
>       <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog"
> Value="VerifyReadyDlg" Order="2"><![CDATA[ATLEASTONESELECTED <>
> "0"]]></Publish>
> 
> Custom Action looked something like this (error handling and exception
> management removed for brevity):
> 
> // these are all hidden or "container only" features,
> // if they are selected for install, they are not considered a "real"
> feature
> private static readonly string[] IgnoredFeatures = { "Server", "Logs",
> "Data", "WebSites", "WindowsServices", "Tools" };
> 
> [CustomAction]
> public static ActionResult MustSelectOne(Session session)
> {
>     ActionResult installResult = ActionResult.Success;
> 
>     // assume we success until told otherwise
>     session["ATLEASTONESELECTED"] = "1";
> 
>     if (NoFeaturesSelected(session))
>     {
>         session["ATLEASTONESELECTED"] = "0";
>         MessageBox.Show(new Form() { TopMost = true }, "One or more
> features must be selected");
>     }
> 
>     return installResult;
> }
> 
> private static bool NoFeaturesSelected(Session session)
> {
>     return session.Features.Where(feature =>
> !IgnoredFeatures.Contains(feature.Name)).All(feature =>
> feature.RequestState != InstallState.Local);
> }
> 
> 
> On Mon, Sep 15, 2014 at 8:55 AM, Noel Farrugia <noel.farru...@outlook.com>
> wrote:
> 
> > I need to "access" MyFeature in the UserInterface code to make a condition
> > such that if no feature is selected for installation the "Next" button can
> > be disabled.
> >
> > Thanks and Regards,
> > Noel
> >
> > > From: jocoo...@jackhenry.com
> > > To: wix-users@lists.sourceforge.net
> > > Date: Mon, 15 Sep 2014 12:24:04 +0000
> > > Subject: Re: [WiX-users] Check that at least one Feature is selected
> > >
> > > Currently, there is limited scoping of properties in Wix 3.x.  The only
> > problem you may sometimes run into is when a property crosses the UI to
> > Execute boundary--to do that, you'll need a public secure property.
> > >
> > > So, how exactly do you want to "access" MyFeature?
> > >
> > > --
> > > John Merryweather Cooper
> > > Senior Software Engineer | Enterprise Service Applications | Continuing
> > Development
> > > Jack Henry & Associates, Inc.® | Lenexa, KS  66214 | Ext:  431050 |
> > jocoo...@jackhenry.com
> > >
> > >
> > >
> > > -----Original Message-----
> > > From: Noel Farrugia [mailto:noel.farru...@outlook.com]
> > > Sent: Monday, September 15, 2014 7:17 AM
> > > To: wix-users@lists.sourceforge.net
> > > Subject: [WiX-users] Check that at least one Feature is selected
> > >
> > > Hi all,
> > >
> > > I have a setup with feature selection enabled like this one now, in a
> > file called "MyInstaller.wxs",
> > >
> > > <Feature Id="MyFeature"
> > >
> > >
> > >              Title="MyTitle"
> > >
> > >
> > >              Description="Desc...."
> > >
> > >
> > >              Level="1" AllowAdvertise="no" Absent="allow"
> > TypicalDefault="install">
> > >
> > >
> > >
> > >       <ComponentGroupRef Id="Test Component"/>
> > >       .
> > >       .
> > >       .
> > >     </Feature>
> > >
> > > The code that handles the User interface is in another file called
> > UserInterface.wxi.
> > > I know that to check if a certain feature is selected I need to do
> > <[CDATA[&MyFeature=3]]> in the "Publish" line example:
> > >
> > > <Publish Property="FeatureChoiceDlgPrev"
> > Value="InstallWelcomeDlg">$(var.allowFeatureChoice) = 1</Publish>
> > >
> > > now my question is how can I access the "MyFeature" which is located in
> > "MyInstaller.wxs" in the "UserInterface.wxi"file ?
> > >
> > > Thanks a lot for your help :)
> > >
> > > Noel
> > >
> > >
> > ------------------------------------------------------------------------------
> > > Want excitement?
> > > Manually upgrade your production database.
> > > When you want reliability, choose Perforce Perforce version control.
> > Predictably reliable.
> > >
> > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
> > > _______________________________________________
> > > WiX-users mailing list
> > > WiX-users@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/wix-users
> > > NOTICE: This electronic mail message and any files transmitted with it
> > are intended
> > > exclusively for the individual or entity to which it is addressed. The
> > message,
> > > together with any attachment, may contain confidential and/or privileged
> > information.
> > > Any unauthorized review, use, printing, saving, copying, disclosure or
> > distribution
> > > is strictly prohibited. If you have received this message in error,
> > please
> > > immediately advise the sender by reply email and delete all copies.
> > >
> > >
> > >
> > ------------------------------------------------------------------------------
> > > Want excitement?
> > > Manually upgrade your production database.
> > > When you want reliability, choose Perforce
> > > Perforce version control. Predictably reliable.
> > >
> > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
> > > _______________________________________________
> > > WiX-users mailing list
> > > WiX-users@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> >
> > ------------------------------------------------------------------------------
> > Want excitement?
> > Manually upgrade your production database.
> > When you want reliability, choose Perforce
> > Perforce version control. Predictably reliable.
> >
> > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> 
> 
> 
> -- 
> Tony
> ------------------------------------------------------------------------------
> Want excitement?
> Manually upgrade your production database.
> When you want reliability, choose Perforce
> Perforce version control. Predictably reliable.
> http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
                                          
------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce.
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to