0

Our application has some user modifiable files(xml files). During an upgrade we do not want the files to replaced. We have marked these files/components as NeverOverwrite = Yes using an XSLT and the heat command.

Now instead of just not replacing these files, we need to append some new data as well. What would be the best way to achieve this ?

Thanks.

1 Answer 1

2

Well, if the files installed by an msi package are customized by an end user, they will not be replaced. Thats a default windows installer behaviour unless this behaviour is over-ridden by making use of the REINSTALLMODE property. Also, the circumstances under which your user customized file will not be cleaned up during an upgrade depends also on where the standard action:RemoveExistingProducts has been sequenced.

Take a look at: http://blogs.msdn.com/b/astebner/archive/2005/08/30/458295.aspx

to get a better understanding of windows installer replacement logic for non versioned files.

The various locations for RemoveExistingProducts and its effect on the installation can be found at:

http://blogs.msdn.com/b/heaths/archive/2010/04/09/major-upgrades-with-shared-components.aspx

To answer your question, have you explored the following in the Wix toolset:

http://wixtoolset.org/documentation/manual/v3/xsd/util/xmlfile.html

http://wixtoolset.org/documentation/manual/v3/xsd/util/xmlconfig.html

This might just be the one that you are looking for. If this does not suffice, perhaps , a custom action is the way forward.

Hope this helps.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.