WiX major upgrade! Need different behaviors for different components...

Posted by Joshua on Stack Overflow See other posts from Stack Overflow or by Joshua
Published on 2010-06-01T16:05:31Z Indexed on 2010/06/01 22:43 UTC
Read the original article Hit count: 232

Filed under:
|

Okay! I have finally more closely identified the problem I'm having. In my installer, I was attempting to get a settings file to REMAIN INTACT on a major upgrade. I finally got this to work with the suggestion to set

<InstallExecuteSequence>
    <RemoveExistingProducts After="InstallFinalize" />
</InstallExecuteSequence>

This is successful in forcing this component to leave the original, not replacing it if it exists:

<Component Id="Settings" Guid="A3513208-4F12-4496-B609-197812B4A953" NeverOverwrite="yes">
    <File Id="settingsXml" KeyPath="yes" ShortName="SETTINGS.XML" Name="Settings.xml" DiskId="1" Source="\\fileserver\Release\Pathways\Dependencies\Settings\settings.xml" Vital="yes" />           
</Component>

HOWEVER! This is a problem! I have another component listed here:

<Component Id="Database" Guid="1D8756EF-FD6C-49BC-8400-299492E8C65D" KeyPath="yes">
    <File Id="pathwaysMdf" Name="Pathways.mdf" DiskId="1" Source="\\fileserver\Shared\Databases\Pathways\SystemDBs\Pathways.mdf" Vital="yes"/>
<File Id="pathwaysLdf" Name="Pathways_log.ldf" DiskId="1" Source="\\fileserver\Shared\Databases\Pathways\SystemDBs\Pathways.ldf" Vital="yes"/>
</Component>

And this component MUST BE REPLACED on a major upgrade. I can only accomplish this so far by setting

<RemoveExistingProducts After="InstallInitialize" />

THIS BREAKS THE FIRST FUNCTIONALITY I NEED WITH THE SETTINGS FILE.

HOW CAN I DO BOTH?!

© Stack Overflow or respective owner

Related posts about wix

Related posts about major-upgrade