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

End dialog if commit action crashed


4 replies to this topic

MichaelU

MichaelU
  • Members
  • 13 posts

Posted 26 February 2003 - 17:44

I need to use some custom actions of type "commit" for my setup. These actions make some critical jobs, and, so, can be failed.
In this case I show message box and return ERROR_INSTALL_FAILURE value to main installation sequence.
Rollback actions are activated in this case, but the finish dialog is still "SetupCompleteSuccess"...
Does anybody know, how I can show "SetupCompleteError" dialog in my situation?
Thanks in advance.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 27 February 2003 - 10:01

Don't use a commit action. Use a deferred action.

MichaelU

MichaelU
  • Members
  • 13 posts

Posted 27 February 2003 - 10:22

Thanks, Stefan, but "commit" custom actions are my another problem. I strongly need to use their.
According my setup design, at finish stage I need to call some methods from assemblies, that were installed by my setup in Global Assemble Cache.
But as you know, Windows Installer places these assemblies into Temp folder first, and move their into real location during InstallFinalize action. So, I can't use deffered actions, and only one way I found to resolve my problem is to use "commit" actions. Actually, all works fine, except the problem with Finish dialog in case of commit action failure.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 27 February 2003 - 10:29

If you put it as last action before InstallFinalize this shold work if you make it deferred execution.
For an explanation see this article.

MichaelU

MichaelU
  • Members
  • 13 posts

Posted 27 February 2003 - 10:49

Unfortunately, it is not work - I tried it just now.
When deffered CA runs, my assemblies are not in global cache - they are in Tmp folder near with GAC folder - so, my calls to these assemblies are not work...