Similar to the bal:Condition element that at install time is processed in the 
BA, it seems reasonable that this be a bal:MsiProperty element that is also 
processed in the BA. That keeps this out of the engine, where I agree it 
doesn't belong.
 
I also agree that this is a very useful feature request. The logical extension 
of this idea would be to add what amount to conditional arguments to 
ExePackages (also processed in the BA) to allow for conditional alteration of 
commandlines to this proposal (e.g. to pass a language flag/argument to an 
EXE-based package).
 
From: r...@robmensching.com
Date: Tue, 2 Jul 2013 12:29:09 -0700
To: wix-devs@lists.sourceforge.net
Subject: Re: [WiX-devs] Random thought: Conditional MsiProperty

That won't make Burn more robust. It'll make it more flexible but not more 
robust. People keep mixing those words up and it bugs me because we did a lot 
of work to make Burn robust in the first version... often at the expense of 
features.

 Anyway, it is a reasonable feature request but we need to be cognizant of the 
number of features in the engine. The engine must be *robust* above all things. 
More code is essentially the antithesis of that.

 Okay, that said, first, if we add this feature what other elements need to be 
conditionalized? I ask because it is best to have some idea how things fit 
together to maintain consistency across the system.

 Second, when should the conditions be evaluated? I expect it should happen 
during Plan.

On Tue, Jul 2, 2013 at 9:37 AM, Hoover, Jacob <jacob.hoo...@greenheck.com> 
wrote:










  I just had another random thought on a potential feature that may make Burn a 
bit more robust.  Specifically, I was pondering the usefulness of a Condition 
attribute on a MsiProperty element. Utilizing WixStdBA, there isn’t an easy way
 to conditionally set a wix variable based on other wix variables.  On 
Wix-Users there was a request on how to apply language transforms via burn so 
they could localize their shortcuts. If burn supported conditional MsiProperty 
elements, this could have been
 done with something like:
 
<MsiPackage …>
  <MsiProperty Name="TRANSFORM" Value=":german.mst" Condition=” 
SystemLanguageID = 1031” />
  <MsiProperty Name="TRANSFORM" Value=":french.mst" Condition=” 
SystemLanguageID = 1036” />
  <MsiProperty Name="TRANSFORM" Value=":japanese.mst" Condition=” 
SystemLanguageID = 1041” />


  <MsiProperty Name="TRANSFORM" Value=":swahili.mst" Condition=” 
SystemLanguageID = 1089” />


  <MsiProperty Name="TRANSFORM" Value=":english.mst" Condition=” 
(SystemLanguageID <> 1031) AND (SystemLanguageID <> 1036) AND (SystemLanguageID 
<> 1041) AND (SystemLanguageID <> 1089)” />


</MsiPackage>
 
  I’m thinking this wouldn’t be hard to implement, and was wondering if a 
feature like this interests anyone else.  Are there any hidden gotcha’s that I 
may be overlooking?
 
Thanks,
Jacob 
 




------------------------------------------------------------------------------

This SF.net email is sponsored by Windows:



Build for Windows Store.



http://p.sf.net/sfu/windows-dev2dev
_______________________________________________

WiX-devs mailing list

WiX-devs@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/wix-devs





------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
WiX-devs mailing list
WiX-devs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-devs                           
          
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
WiX-devs mailing list
WiX-devs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-devs

Reply via email to