[wix-users] Bizarre behaviour in Bootstrapper/MSI with a prerequisite install

Steve Ogilvie sogilvie at msn.com
Thu Aug 27 10:30:43 PDT 2015

Hi folks,
Something bizarre that I haven't seen before...
One of the pre requisites for our installer is MS SQL Server Compact SP2 (We are installing SP2 CU2).
The Bootstrapper is:
<MsiPackage Id="C_SQLCompactx86"                  DisplayName="Microsoft SQL Server Compact 3.5 SP2 CU2 (x86)"                  DisplayInternalUI="no"                  Visible="yes"                  SourceFile="$(var.scSourcePath)\PreReqs\SSCERuntime_x86-ENU.msi"                  Name="RedistSuite\SSCERuntime_x86-ENU.msi"                  Cache="no"                  Compressed="no"                  Permanent="yes"/>
And since our customers will sometimes run our MSI's outside the Bootstrapper (GPO doesn't allow EXE's) I have code in the MSI to check for SQL Server Compact:<!-- Check for Microsoft SQL Server Compact 3.5 SP2 CU2 x86 -->    <Property Id="SQLCOMPACTX86SEARCH" Secure="yes" Value="0">      <RegistrySearch Id="SQLCompactx86Search"                      Key="SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5"                      Name="Version"                      Root="HKLM"                      Type="raw"                      Win64="no"/>    </Property>
<Condition Message="$(var.PlatformProductName) requires Microsoft SQL Server Compact 3.5 SP2 CU2 (x86). Please install the pre-requisite, then restart the setup.">      <![CDATA[(Installed OR (SQLCOMPACTX86SEARCH >= "3.5.8082.0" AND NOT VersionNT64) OR (VersionNT64))]]>    </Condition>
Our install failed in the MSI because it did not find the version 3.5.8082.0, the registry had 3.5.56xx.x..
So I ran the prerequisite MSI and it ran in maintenance mode so I ran a repair...
However after the repair, the version number in the registry got bumped up to 3.5.8082.0
I am baffled as to why it looks like an update occurred instead of a repair...
That was weird...


More information about the wix-users mailing list