Showing results for 
Show  only  | Search instead for 
Did you mean: 

Pulling my hair out.

By Level 11 Flexeran
Level 11 Flexeran
I have three MSI packages. That need to be installed in a spicific order. How do I do it. I have tried playing with custom actions but it just does not seem to work.
(2) Replies

Could you give us an overview of the custom action and specifically what is happening? Without much information, my best guess is that the files are running all at the same time, because the Run command usually spawns the app (or MSI in this case) and then moves on.

If that is the case, then you might want to have a loop in between Run calls to check for specific files installed by each MSI:

/* pseudocode */
Run "msi1"
while not (FileExists("sentinelfilename"))
[do nothing]
Run "msi2"

This will prevent the second MSI from being run until the first is done.

You could also do something like use 3 custom actions, or use MessageBoxes to stop the program from continuing until the MSI is fully installed, then clear the MessageBox and run the next MSI.

Hope this helps, if not, then let me know a bit more about what sort of issues you're running into.
Consider using LaunchAppAndWait. You can find a sample here.