cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ajhartley
Level 3

Upgrade only release configuration

We're trying to produce a release of our software that will only work as an upgrade. For various reasons, it doesn't work as a patch, so we've created a minimal release configuration that doesn't include prerequisites, .NET installer etc.

We'd like to be able to put that on our website so existing users can download it, but we want to restrict that version to only work if an existing version (bought from us on CD) has already been installed. I haven't found a way to do this, but I suspect it has something to do with detect properties on the upgrade table.

It would be nice if this behaviour could be controlled just by which release configuration was built, but I'll manage if not.

The installer is a Basic MSI project with a generous helping of SQL scripts, installscript custom actions and support dlls. Any suggestions?
Labels (1)
0 Kudos
(1) Reply
ajhartley
Level 3

Worked it out myself, with inspiration from the documentation on downgrade prevention.


  • Created a new Product Configuration, with a Product Configuration Flag of UPGRADEONLY, and put my minimal release in there.
  • Set the Detect Property for my major Upgrade Item to DS5UPGRADE
  • Added a Type 19 custom action (error message) just after FindRelatedProducts with the condition ISReleaseFlags><"UPGRADEONLY" AND NOT DS5UPGRADE


Now I can only use the installation kit generated by that Product Configuration to do upgrades, or the installation kit from the other Product Configuration for upgrades and clean installs.
0 Kudos