how to call one msi from another using installshield pro?
Hi, We wanted to invoke welcome dialog,license agreement dialog first before the pre-requisite (which has installation of another exe) followed by post-installation script. To achieve the above flow, we have planned to build seperate MSI for pre-requisite (download & install third party exe from web URL) and another MSI for post installation steps. Hence we have parent/main MSI project which will have sequence of action such as welcome,license agreement dialog, MSI project which contains the pre-requisite software, MSI project which contains the post-installation scripts. It would be great if the experts can suggest the better approach if any for the above scenario rather than creating mutliple MSI. Appreciate your earliest response along with sample code if possible. Thanks in advance.
Hi @javasaran ,
You can use nested-installation custom action to launch another msi from current msi.
When you are sequencing a nested-installation custom action (called Launch another .msi package in the Custom Action Wizard), you must place the action in the Execute sequence after the standard CostFinalize action.
Additionally, ensure that the custom action launches before any of the files contained within the installation are needed by your main installation, if applicable. For example, if you later want to launch an executable file that is installed as part of the second .msi file, ensure that the package is installed before you try to launch the executable file.
I have kept the python exe installation(internally msi exists) as a custom action in vbscript and calling that just before InstallFinalize(definitely will be after CostFinalize) in Execute Sequence and in deferred system context.
But still I am getting 1618 error code during installation.: Another Installation is already in progress
Please suggest how to fix this.
I can't call this later of installation as I am passing the subfolder of installdir as python install directory,which I can get access only during installation of msi.