title: How to force deployment project to update files during installation of newer version?
body: <p>I have a Deployment Project for my VS2008 C# application. When installing a new version of my application I want to make sure that files are updated with the files contained in the installer.</p>
  
  <p>I want my installer to automatically remove any old version of the installed application. To do that I follow this procedure (also described <a href="https://stackoverflow.com/questions/3024753/installing-a-new-version-of-a-deployment-project-over-old-version">here</a>):</p>
  
  <ol>
  <li>Set RemovePreviousVersions to True</li>
  <li>Set DetectNewerInstalledVersion to
  True</li>
  <li>Increment the Version of the
  installer</li>
  <li>Choose Yes to change the ProductCode</li>
  </ol>
  
  <p>For the assemblies I make sure the AssemblyVersion is set to a higher version:</p>
  
  <pre><code>[assembly: AssemblyVersion("1.0.*")]
  </code></pre>
  
  <p>Everything is working as intended except for my configuration files (xml files). Since I cannot find a way to "version" these files I cannot make sure that the files are updated if they have been modified on the target machine.</p>
  
  <p>Is there any way to do this and how?</p>
  
  <p><strong>UPDATE:</strong> I have tried the approach/solution/workaround found <a href="https://stackoverflow.com/questions/1682090/net-setup-project-force-new-file-replacement-on-reinstall">here</a></p>
  
  <ol>
  <li>Include the file directly in a
  project with the following
  properties: "Build Action -> Content
  file" and "Copy to Output Directory
  -> Copy always"</li>
  <li>Then add it to the deployment
  project via Project
  Output->Database->Content Files</li>
  </ol>
  
  <p>Unfortunately it did not make any difference. The behavior is exactly the same.</p>