Take the 2-minute tour ×

When I run a silent NSIS installer (from the console, as in installer.exe /S /D=C:\Foo) it immediately moves to the background. I'd like to wait until it has finished installing before I do anything else. Is there a flag I can pass to tell the installer to be blocking?

share|improve this question
How are you calling your installer? From a console? –  Francisco R Apr 18 '13 at 17:39
add comment

1 Answer

up vote 2 down vote accepted

You don't say anything about how you start the process in your question! NSIS installers are always "blocking", for a silent installer this means you just have to wait for the child process to end.

If the parent process is also a NSIS installer you can do ExecWait '"c:\path\to\installer.exe" /S /D=C:\Foo' or if it is a batch file you must use start "" /WAIT "c:\path\to\installer.exe" /S /D=C:\Foo

share|improve this answer
I clarified my question, and the start trick certainly works. Why is it that that is needed with a silent nsis installer and not, for instance, silent MSI installs? –  Frew Apr 18 '13 at 21:07
The console generally only waits for console programs, NSIS is a GUI application even in silent mode. Try running calc or other GUI applications and see what happens... –  Anders Apr 18 '13 at 22:23
Good to know! Thanks –  Frew Apr 18 '13 at 22:55
add comment

Your Answer


