Hello. Not sure if I'm posting to correct topic..
I use .Net installer component to perform custom installer action (overriding void Install(IDictionary stateSaver) of System.Configuration.Install.Installer)
I update .config XML file with password that user enters during installation process.
On some PC's (happens quite randomly), after working properly for certain time, application suddenly fails because in .config XML there is no password anymore.
I suspect Windows Installer auto-repair feature is silently replaces this file.
Seem to happen only if the newer version of the application is installed without manually deinstalling previous.
How can I get rid of auto-repair, or how to perform custom action so that it is not considered as malicious change?
This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Auto-repair kills custom action results
Started by
Alexei
, Feb 20 2007 14:09
3 replies to this topic
Posted 20 February 2007 - 14:13
I believe this would be best accomplished by enabling the "never overwrite if keyfile exists" feature and also setting the file to be permanent.
Regards
-Stein Åsmul
-Stein Åsmul
Posted 20 February 2007 - 14:59
QUOTE (Glytzhkof @ 2007-02-20 14:13) |
I believe this would be best accomplished by enabling the "never overwrite if keyfile exists" |
Thanks. Will try to go this way.
Could you suggest wich .msi table contains "never overwrite if keyfile exists"?
Didn't found in "Property" table.
Posted 21 February 2007 - 11:34
This is a bitflag set in the MSI Component table. Most tools have a GUI option which is more easily set, but you can still go into the raw table view and set the bit flag to the appropriate value. In your case you need:
msidbComponentAttributesPermanent 16
msidbComponentAttributesNeverOverwrite 128
So 16 + 128 = 144
msidbComponentAttributesPermanent 16
msidbComponentAttributesNeverOverwrite 128
So 16 + 128 = 144
Regards
-Stein Åsmul
-Stein Åsmul