Search code examples
installshieldcustom-actionwindows-installerchained

Add a custom action after chained msi done


i have an ism which contains two chained msi. curentlly, the installer in the end do the two chained msi as the last action and then finish.

can i add a custom action after the chained msi? i want to do it after the chained msi done

thank you in advance!


Solution

  • You cannot add a custom action per-se. There are a few options I've used in the past, depending on your needs one of them may suit you:

    • If your installer always runs with UI, you can add a custom action at the end of the User Interface Sequence (after ExecuteAction). This will get executed only after all chained MSI packages were run.
    • If you don't need access to the MSI properties (or can read the data from the registry or somewhere), you can just create another basic MSI that does what you need, and chain it as the last MSI to run. MSI packages are executed in the order specified in 'Order' column of the ISChainPackage table.
      InstallShield Support recommends this approach (there are several threads about it in their support forums).
    • Finally, if your custom action can be implemented using an MSI Transform, consider doing that. Transforms are applied after all chained MSI were run.