Hi all,

I have a dll custom action which is running under Deferred Execution in System Context. Which do some modification in user system. If user cancels the installation of MSI, MSI will
rollback & it brings the system in original state but executed custom action changes will remain in user system. So I tried to write one more custom action to rollback the Custom Action changes. Now the problem which I am facing is, the Rollback custom action is not running. I set the Install Exec Sequence for Rollback CA is Deferred CA->Rollback CA.

I am using InstallShield 2012 tool.

Please help me to resolve this issue.

Thanks in advance

Regards,
Sanjay
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
Why not use /qb! to avoid users from canceling the installation?
Does a normal uninstall work as expected?
Answered 01/24/2012 by: andemats
Second Degree Black Belt

Please log in to comment
0
Thanks for your reply.
/qb! is used to show limited UI. But my case is I have to show the dialogs.
Only what I want is during Rollback I have to run the custom action.
Normal uninstall works fine.
During installation whatever custom action does the modification those changes I have to bring back to original state if user cancels the installation.

Thanks,
Sanjay
Answered 01/24/2012 by: sanjaypakale
Senior Yellow Belt

Please log in to comment
0
ORIGINAL: sanjaypakale
But my case is I have to show the dialogs.


Ok, I thought you were deploying this without user interraction.

What is it that your CA does in the user system?
Answered 01/24/2012 by: andemats
Second Degree Black Belt

Please log in to comment
0
The CA will execute exe and it changes system state.
I need to bring back to original state by running another CA.
Answered 01/24/2012 by: sanjaypakale
Senior Yellow Belt

Please log in to comment
0
I fixed this issue.
Resolution for this problem is
1. Rollback custom action should execute after InstallInitialize
2. I set the Install Exec Condition to 1.

Thanks,
Sanjay
Answered 01/24/2012 by: sanjaypakale
Senior Yellow Belt

Please log in to comment
0
If you had read anything connected with Best Practice for Windows Installer or, indeed, The Definitive Guide To Windows Installer search for 'Rollback Custom Actions'), you would know that for every CA which runs at installation time you need to author another for uninstallation time.

If, as I suspect, you are dealing with a vendor MSI, then this is a good time to introduce them to The Packager's Baseball Bat but, in the meantime, to get your package working as it should, you could easily build your own CA to rollback the original action. Let's be honest: installation comes down to file and registry activity, both of which can be dealt with by, say, script.
Answered 01/24/2012 by: VBScab
Red Belt

Please log in to comment
Answer this question or Comment on this question for clarity