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

Non-temporary rollback


3 replies to this topic

ebuljan

ebuljan
  • Members
  • 3 posts

Posted 24 May 2005 - 23:26

I have been given two requirements for my otherwise simple msi project:

1 - No Add/Remove Programs entry
2 - The ability to rollback the install at a later time. Not an uninstall, but a rollback.

I'm using Wix to create the .msi.

Is this possible to accomplish without having to write a ton of custom code? I'd like to leverage the Windows Installer's built-in rollback mechanism, but in a situation where the install was succesful. It sounds like to do this I would have to:

1 - Supress the deletion of the temporary rollback directory (where is it?)
2 - Find a way to start the rollback procedure

Any ideas? Thanks in advance!

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 25 May 2005 - 08:57

1 - set the ARPSYSTEMCOMPONENT property
2 - MSI is not designed to do this. I don't think it would work. And if it did it would break your machine if you installed some other software afterwards. Note that rollback will downgrade files, restore registry entries etc. If you need to rollback the system to a previous state, better create a disk image snapshot (using Norton Ghost or DriveImage or a similar software).

_nick_

_nick_
  • Members
  • 34 posts

Posted 25 May 2005 - 13:15

By rollback what do you mean? Do you mean you would like to uninstall updates? I beleive with MSI 3.0 if you update via patching, you can specify if patches can be uninstalled (see PatchMetadata/@AllowRemoval). I haven't used this feature at all, but it should definately be available through the Add Remove Programs applet in the Control Panel (provided you have "Show Updates" checked). Also I don't think that you can suppress the use of a temp folder, but you can force it to be removed (see PatchCreation/@CleanWorkingFolder).

ebuljan

ebuljan
  • Members
  • 3 posts

Posted 25 May 2005 - 16:23

QUOTE (Stefan Krueger @ 2005-05-25 08:57)
I don't think it would work. And if it did it would break your machine if you installed some other software afterwards. Note that rollback will downgrade files, restore registry entries etc.

I've seen this argument before, and it makes complete sense for the vast majority of cases. Unfortunately I have to deal with an exception to the norm!

My rollback only needs to restore the files that were replaced by the installation, and they are all in my Program Files directory. Would it make sense to write a custom action to put the files into a rollback folder for restoration later? I don't want to reinvent the wheel if there is a feature that does something similar already.