In the Bundle element, or a referenced fragment, use a Variable element and use Override='yes' <Variable Name='VariableName' Value='*' Type='string' bal:Overridable='yes'/> or <Variable Name='VariableName' Value='*' Type='numeric' bal:Overridable='yes'/>
For control logic in InstallCondition I prefer numeric, but if the variable is to be passed to MsiProperty use a string. In the mba, in OnDetectComplete (or wherever you want after Burn initializes the variables) if (myapp.Model.Engine.StringVariables.Contains("VariableName") && e.PackageId.Equals(myapp.Model.Engine.StringVariables["VariableName"], StringComparison.Ordinal)) { myapp.Model.Engine.StringVariables["VariableName"] = "some string"; } (or use Engine.NumericVariables In installCondition'=" VariableName = 1" (if numeric or use quotes around a string). -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Passing-Variables-from-C-custom-BA-to-WIX-tp7596113p7596187.html Sent from the wix-users mailing list archive at Nabble.com. ------------------------------------------------------------------------------ Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users