[wix-users] Bundle: How to stop evaluating a condition at Uninstall?

Jeremy Drake jeremydrake+wix at eacceleration.com
Thu Oct 8 08:29:46 PDT 2015


With a condition like

<![CDATA[WixBundleInstalled OR ((PreReq_161_Maj_Ver = 16) AND (PreReq_161_Min_Ver >= 1))]]>

Then if the bundle is already installed, it doesn't matter what the rest 
of the expression is, because TRUE OR anything is TRUE.  I don't know if 
burn does short-circuit of boolean expressions so that the parenthesized 
expression is not evaluated, but I don't see why that should matter.

On Thu, 8 Oct 2015, Farrukh Waheed wrote:

> Thanks for replies.. I tried what you are recommending. But actually
> evaluation is due to :
> ((PreReq_161_Maj_Ver = 16) AND (PreReq_161_Min_Ver >= 1))]
>
> REMOVE is property set up at uninstall time with the value of features to
> be uninstalled.
>
> On 8 October 2015 at 08:15, Jeremy Drake <jeremydrake+wix at eacceleration.com>
> wrote:
>
>> I have usually seen the recommendation to use WixBundleInstalled OR (...)
>>
>> for example
>>
>> http://howdididothatthingagain.blogspot.com/2013/06/conditioning-wix-bundle-when-it-should.html
>>
>> I don't remember burn setting a REMOVE variable, that may just be from
>> within an MSI.
>>
>>
>> On Thu, 8 Oct 2015, Phill Hogland wrote:
>>
>> I have not used bal:Condition for some time, since I have a mba, but I
>>> think you want to add AND NOT REMOVE to your CDATA statement.
>>> http://www.symantec.com/connect/blogs/conditions-custom-actions-used-msi
>>>
>>>
>>> -----Original Message-----
>>> From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On
>>> Behalf Of Farrukh Waheed
>>> Sent: Thursday, October 08, 2015 8:03 AM
>>> To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
>>> Subject: [wix-users] Bundle: How to stop evaluating a condition at
>>> Uninstall?
>>>
>>> Hello mates,
>>> I have a situation where in my Bundle, a condition evaluating at install
>>> time, Must Not Be  evaluated at uninstall time.
>>>
>>> Scenario is, a pre-requisite application is uninstalled before removing
>>> my Bundle. Now when my Bundle would be uninstalled, it will try to evaluate
>>> bal:Condition to check that pre-req application, and would go false and
>>> refused to uninstal.
>>>
>>> I feel, I'm just missing something here... Here is my Condition xml
>>>    <bal:Condition Message="[WixBundleName] requires the PreReq. "  >
>>>      <![CDATA[Installed AND ((PreReq_161_Maj_Ver = 16) AND
>>> (PreReq_161_Min_Ver >= 1))]]>
>>>    </bal:Condition>
>>>
>>>
>>> Thanks a bunch.
>>> Farrukh
>>>
>>> ____________________________________________________________________
>>> WiX Toolset Users Mailing List provided by FireGiant
>>> http://www.firegiant.com/
>>>
>>> ____________________________________________________________________
>>> WiX Toolset Users Mailing List provided by FireGiant
>>> http://www.firegiant.com/
>>>
>>>
>> ____________________________________________________________________
>> WiX Toolset Users Mailing List provided by FireGiant
>> http://www.firegiant.com/
>>
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/
>


More information about the wix-users mailing list