msi keeps reinstalling




I would like to know how do I disable, in msi project prepared by 2003,
the following "feature":

When the client deletes a file on the machine, with the application
installed, on next run, the msi pops up, and reinstalls this file.

I can edit the msi file with orca, but I don't know the correct
property name to disable. I also have the 2003 setup project,
and the closest property I see there is "vitality" property for file,
but it doesn't have any effect.

Thank you in advance,

Carolyn Napier [MSFT]

You have two options in this case if you want to disable application self-repair
(although I wouldn't normally recommend it). This is basically being caused by
the shortcut which is a special MSI shortcut that can handle the self-repair.
The way it works is that it checks for the presence of the keypaths of the
components to which the shortcut's feature includes.

In any case, here's how to disable the capability:

Option 1:
Add the DISABLEADVTSHORTCUTS property to the Property table in your package and
give it a value of 1.

Option 2:
Alter the Target column of the Shortcut table for the shortcut in question.
Change it from referencing a feature to instead using the [#filetablekey]
syntax. This will make it a 'normal' shortcut. Normal

You should be able to accomplish both using Orca. Both methods result in the
creation of normal shortcuts which do not have the self-repair capabilities. It
should also be noted that COM activation (CoCreateInstance calls) can result in
the same behavior. If you don't want that, then you should author what you would
normally put in the Class table in the Registry table instead.

You can find more information on this in the Windows Installer documentation:

Hope this helps,
- Carolyn Napier
Microsoft Windows Installer Team

This posting is provided "AS IS" with no warranties, and confers no rights.
Please do not send email directly to this alias. This alias is for newsgroup
purposes only.


Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question