Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>The question is <strong>WHY have the installed files changed?</strong></p> <p>The benefits of MSI repair is that if something gets mucked up, a virus infects your application, or some silly user deletes the wrong files/registry entries then the windows isntaller resiliency check kicks in and repairs all your files.</p> <p>There are a number situations where the Windows Installer resiliency check will kick in. I'd suggest changing the behaviour of your application so that you don't update installed files. Alternatively if you don't want to conform to "best practices" and not update your installed files then you'll probably need to use an alternate installer technology.</p> <p>For example, you're not writing changes to stuff in program files are you? How does your application handle running under a limited user account? On a terminal server? On Vista? None of these scenarios will permit writing to the program files folder (or any protected per-machine location)</p> <p>One solution to prevent this behavior from happening would be:</p> <ul> <li>Install default configuration files to <code>All Users\Application Data</code></li> <li>Copy these on first run to <code>Username\Application Data</code> (aka <code>%AppData%</code>)</li> <li>Only update the per-user files. This prevents configuration being lost/changed during MSI repair.</li> </ul> <p><strong>UPDATE:</strong> Try not setting the ZIP as a "key file" in the particular component, I think windows installer only checks for that key files haven't changed. I think you're probably going to run into the limitations of VS2005 setup projects pretty quickly and so it might be worth checking out <a href="http://wix.sf.net/" rel="nofollow noreferrer">WiX</a> if you've got the time. Also one thing that you'll find is that Windows Installer setup projects are almost always cluttered, having hundreds or thousands of components seems to be the nature of the beast.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload