This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Running CA after a chained .msi
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 07, 2009
03:49 PM
Running CA after a chained .msi
If I want to launch a custom action after running a chained .msi, does anyone know what Install UI sequence I should have it follow?
(7) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 08, 2009
10:28 AM
I've not tried from the UI sequence, but I suspect anything after ExecuteAction stands a chance. In general I would recommend a (deferred) Commit execution action in the InstallExecute sequence, but it does depend what you're trying to do.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 21, 2009
01:21 PM
My chained .msi installs a program. The custom action would access an installscript function and change the filename of the chained program executable. Since this approach depends on files that are installed by the chained msi, is a deferred action still recommended? Any ideas on what sequence the custom action belongs in and which action it should follow? I still can't get this to work.
Thanks!
Thanks!
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 21, 2009
01:23 PM
Can you just transform the MSI and get rid of the custom action?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 21, 2009
01:29 PM
Not sure what you mean by transform. The chained msi is a third party installer so I don't have access to the installation project for it. If I did, I would change the filename before building the install and then I wouldn't have to fuss with custom actions. Is this what you were getting at?
Thanks.
Thanks.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 21, 2009
02:49 PM
The usual sequence order was like follows; note the outer UI items are completely skipped during silent e.g. /qn installs:
Unfortunately I'm not certain what the order of commit actions is between the various products, or if it's even specified. So if the chained install needs the old filename in a commit action (or in repair or uninstall, don't forget those), the custom action method is off. Christopher's suggestion of applying a transform is better, so long as the third party package has no untransformable references to the file (e.g. hardcoded in a custom action).
- UI through ExecuteAction
- Execute Immediates through InstallFinalize
- Execute Deferred until error
- If error, Execute Rollback from error back to start, no more execute
- Otherwise Execute Commit
- Execute Immediates after InstallFinalize
- Execute Immediates through InstallFinalize
- If no error, UI after ExecuteAction
- Appropriate final action (e.g. sequence -1, generally a dialog) indicating error or success
- UI through ExecuteAction
- Execute Immediates through InstallFinalize
- Execute Deferred until error
- If error, Execute Rollback from error back to start, no more execute
- Execute Immediates after InstallFinalize
- For each chained install:
- Execute Immediates through InstallFinalize
- Execute Deferreds
- Execute Immediates after InstallFinalize
- Execute Immediates through InstallFinalize
- For each install, including chained:
- If error, Execute Rollbacks in reverse order
- Otherwise Execute Commit
- If error, Execute Rollbacks in reverse order
- Execute Immediates through InstallFinalize
- If no error, UI after ExecuteAction
- Appropriate final action (e.g. sequence -1, generally a dialog) indicating error or success
Unfortunately I'm not certain what the order of commit actions is between the various products, or if it's even specified. So if the chained install needs the old filename in a commit action (or in repair or uninstall, don't forget those), the custom action method is off. Christopher's suggestion of applying a transform is better, so long as the third party package has no untransformable references to the file (e.g. hardcoded in a custom action).
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 21, 2009
03:16 PM
Thanks to both of you. You were very helpful, and I finally got it working.