Hi,
I've created a deferred custom action which is called after installFiles step of the msi.
My problem is that irrespective of whichever error code I return from this custom action MSI ends with error 1603 (Install Failure), and show same error at the finish screen.
Is there any way via which the error returned from my custom action can be trapped and corresponding error prompt or error string can be shown?
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.

How to handle return code of custom action
Started by
deepti
, May 13 2010 13:56
8 replies to this topic
Posted 14 May 2010 - 04:57
I am returning 27555, as I read some where that msi reserves range 20,000 to 30,000 for custom action return codes
Posted 14 May 2010 - 05:01
I am returning 27555, as I read some where that msi reserves range 20,000 to 30,000 for custom action return codes .
Just to clarify further, I've a custom action Dll whose exposed function is being called via msi. If I look into msi logs error code gets printed as an output from custom action.
All I want is that on the basis of error code returned by custom action some specific alert should be thrown. My custom action is a deferred one.
Just to clarify further, I've a custom action Dll whose exposed function is being called via msi. If I look into msi logs error code gets printed as an output from custom action.
All I want is that on the basis of error code returned by custom action some specific alert should be thrown. My custom action is a deferred one.
Posted 18 May 2010 - 13:38
I don't believe you can "capture" the return code from a dll and condition further action based on it. If I understand it correctly, a return code of anything other than zero will cause the MSI to fail and rollback if you use "Synchronous (check exit code) ".
(And since it is a deferred action, you won't be able to set a property to use in conditions after the custom action.)
What you may want to try is to have your dll itself display the alert, then return 0 if you want the msi to continue processing, and an error code if you want it to stop and roll back (or just set it to ignore the exit code and it will always continue).
(And since it is a deferred action, you won't be able to set a property to use in conditions after the custom action.)
What you may want to try is to have your dll itself display the alert, then return 0 if you want the msi to continue processing, and an error code if you want it to stop and roll back (or just set it to ignore the exit code and it will always continue).
Kathy Morey
Synergy Software Engineer
ProfitStars, a Jack Henry Company
kmorey@profitstars.com
Synergy Software Engineer
ProfitStars, a Jack Henry Company
kmorey@profitstars.com