View Full Version : RollBack Custom action does not engage

Peter Kosenko
12-31-2008, 11:01 PM
Any clue why a properly configured Rollback custom action would not kick in.

Unfortunately, the developers want me to MOVE an Access database out of the way so that another updated copy can be installed. Moving the database to a backup file works, but copying it back during Rollback doesn't seem to work. The Rollback action has a message box that doesn't even display.

Synchronous(Check exit code)
Rollback Execution
Install Execute Sequence between InstallInitialize and InstallFinalize
No condition

Yet the custom action simply does not engage.

01-02-2009, 12:57 AM
Have you tried generating an MSI log and seeing what it contains? That's where I'd start.

Peter Kosenko
01-02-2009, 04:52 PM
MSI (s) (A8:FC) [13:01:04:764]: Doing action: RestoreProjectMinerDatabase
Action 13:01:04: RestoreProjectMinerDatabase.

[Since this is a rollback, that should mean that the action is being written to the rollback script, no?]

Action 13:01:04: CancelSetup. Dialog created
MSI (c) (18:B4) [13:01:05:702]: Doing action: ISSetupFilesCleanup
Action 13:01:05: ISSetupFilesCleanup.

Peter Kosenko
01-02-2009, 05:19 PM
Is this where the problem is?

MSI (c) (18:B4) [13:01:05:702]: Skipping action due to msidbCustomActionTypeFirstSequence option.

I have read some cases where others have had the same problem. This supposedly happens when a CA is in two sequences but is scheduled to run only once. HOWEVER, my Rollback action is ONLY in the Execute sequence.

05-07-2010, 03:06 AM
Did you solve it? How? I put a custom action (a C# exe which would just show a messagebox) with

Action Type:

Type: Launch an executable

Location: Stored in the Binary table
Action Parameters:

Source: exe path

Target: a b c (doesn't matter, I don't need it)
Additional Options:

Return Processing: Synchronous (Check exit code)

Run Only During Path Uninstall: unchecked
Respond Options:

In-Script Execution: Rollback Execution in System Context

Executing Scheduling: disabled

Insert into Sequence:<Absent from sequence>

Install Execute Sequence: After InstallServices (what should I set here?)

Install Execute Condition: (do I need to set? I left it blank)

but it didn't fire the message box when I canceled the uninstall.