cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
haggag87
Level 2

log actions causing msi installshield 2008 to reinstall"self repair"

How to log only the changes causing a MSI file made by installshield 2008 to reinstall the msi"self repair"? and also how to disable self repairing of msi using installshield 2008?
and whats the reason behind self_repair?

Please help,

Thanks a lot in advance,
Labels (1)
0 Kudos
(2) Replies
Kelter
Level 10

any of the logging commands work whenever they are called, so your best bet is to write a wrapper function that tests the value of the "REINSTALL" property before deciding whether to call SprintfMsiLog function. that, of course, only applies to your own calls to that or related functions. you cannot suppress msi logging entirely. why do you want to do this?

you can disable the repair button in Add/Remove programs by choosing that option under "general settings/Add Remove Programs" in the IDE. this only disables the button in ARP, however. in order to fully disable it, you'll need to write an error-type custom action that will make your installation bail out if "REINSTALL" is set. schedule it near the top of both your UI, and Exe sequences. this will prevent the user from calling "msiexec /i{product id} REINSTALL=ALL" from the command line.

the purpose of the reainstall (repair) feature is so that msi logic can check each target file against each files installed and make sure it exists and is up-to-date. if not, it reinstalls that component. this is extremely useful., and i'd recommend making friends with the feature rather than blocking it entirely.
0 Kudos
mrglassworm
Level 2

Good advice Kelter, it helped me with my phoenix seo software. Thanks!
0 Kudos