Thanks for the tip, Phil.  A couple questions about that:

I assume without bal:Overridable=“yes”, my <Variable>’s are really constants?

In this particular case, I just need constants.  I have to declare them in my 
bundle.wxs so I can use them in my .wxl’s that localize my theme.

For example, I declare a separate <Variable> for the translation of my 
application’s name into each language I support.  I use bafunctions.dll to set 
WixBundleName to the appropriate one, depending on the user’s language.  That 
makes the correct translated name show up in Programs & Features.

Putting the translations in <Variable>’s in bundle.wxs gives me 2 advantages 
over hard-coding the translations in WixBootstrapperBAFunction.cpp.  First, if 
I were to change a translation (highly unlikely), I would not have to rebuild 
bafunctions.dll.  Second (and more importantly), I have to use the <Variable>’s 
to set the Caption in my .wxl’s, since according to answers I've received on 
this email list (and my experience), the Caption is determined before 
bafunctions.dll gets involved.

Am I correct, then, that in this case there’s no reason to use 
bal:Overridable=“yes”?

Also, I know nothing about the recovery functionality you mention.  Are you 
saying that if I add a 'Persisted=“yes”’ attribute to my variables, then if 
there is a reboot during install, the install could pick up where it left off, 
and the .wxl’s would use my <Variable>’s?  But that if I don’t have 
Persisted=yes for my <Variable>’s, then the install could pick up where it left 
off, but not have the values of those variables, so where I use them in my 
.wxl’s it would show the name of the variable or something like that instead of 
the value?

Really appreciate the help!

> On Apr 15, 2015, at 9:47 AM, Phill Hogland <phogl...@rimage.com> wrote:
> 
> You posted:
> &lt;Variable Name="MyVariable" Value="MyValue" />
> 
> I set bal:Overridable='yes' on any variable I create in the Bundle and
> interact with in the bafunctions.dll or mba.
> &lt;Variable Name="MyVariable" Value="MyValue" bal:Overridable='yes'/>
> 
> And since I also read threads about Burn's functionality to recover if an
> interruption/reboot happens in the middle of the chain, I also set
> Persisted='yes' for most variables.
> 
> 
> 
> --
> View this message in context: 
> http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/how-to-define-a-custom-variable-in-bundle-wxs-and-get-its-value-in-BAFunctions-dll-tp7599844p7599973.html
> Sent from the wix-users mailing list archive at Nabble.com.
> 
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to