DNI 'exe' component doesn't wait until end to run next component

Jun 18, 2010 at 4:55 PM
Edited Jun 18, 2010 at 6:02 PM


Is this normal?

I've got a 3-part DNI. 

First part would install Dot Net 351 SP1 if needed. 

Then it will install MySQL v5.0.78 using their setup.exe program,

and the third part is my MSI file. 

I thought that DNI would wait for the MySQL setup program to finish before it runs my MSI, but apparently it doesn't (or, more likely, is that I've got something wrong in my config file).

If part 2 is an MSI file (and not setup.exe), DNI waits for this setup to end before installing my MSI stuff...

How can I solve this problem?

Thanks, GAP

Jun 18, 2010 at 8:14 PM

DNI will wait, provided that the application it runs blocks and doesn't detach itself. So it looks like your MySQL executable is a standard windows application that runs and returns immediately, before actually doing anything. Kinda like running notepad.exe. You need to find out how to get blocking behavior of that setup, often with silent switches or sometimes by running it under cmd.exe /C.

That's actually a good way to test. Run cmd.exe /C setup.exe, cmd should not terminate until the setup is over.

Jun 21, 2010 at 5:48 PM

Yes!  This must be the case because when I use "cmd.exe" it waits.  Thanks DB.

Jun 21, 2010 at 6:13 PM

Good. Just run it with cmd.exe. Your applicaiton probably has code that detects whether it's run with a Console, something DNI isn't.