Jump to content


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.
Photo

Database Being Removed After Finalize???


1 reply to this topic

Superfreak3

Superfreak3
  • Full Members
  • 437 posts

Posted 19 January 2004 - 22:33

Here's the situation ... A user of our software installed our product. They laid a database over top of one of our installed components manually following the installation. I'll call this Test.mdb.

During a subsequent upgrade, this .mdb is updated properly in that a more recent/current file is placed, but there is one problem. The RemoveExistingProducts action has been moved after the InstallFinalize action for the purpose of solving past file removal problems. I thought nothing was to be removed by sequencing this way. However, it appears that the Test.mdb is being removed when the backup files are removed.

Any ideas on why this is occurring? Test.mdb should remain following upgrades.

Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 20 January 2004 - 05:39

Sequencing RemoveExistingProducts after InstallFinalize will cause uninstall to be done after the new product is installed (rather than the other way around). In effect it will be a "diff" where obsolete files are removed (files that were in the old release but that have been removed from the new release are uninstalled).

If you use different component GUID's for the database file in the first setup and the second setup, the file will be removed after upgrade (what happens is that the same file is referenced by two GUID's. Since the old GUID for the file is not in the newer setup the diff operation will show that 'this component is obsolete and can be removed').

To fix this problem you should use the same component guid in both setups. I always enable the "permanent" flag for files that I want to never be uninstalled. Check the property inspector for the component that installs the file to enable this flag.
Regards
-Stein Åsmul