Это не просто "ExecWait". Это также о «_?», Специальной инструкции по удалению.
На самом деле, во время удаления uninstaller.exe копируется во временный каталог, а затем выполняется оттуда.
Этот шаг копирования и вызова нового деинсталлятора из временного каталога может быть быстрым, и вызов будет возвращен немедленно, фактически не дожидаясь завершения деинсталлятора.
Используя "_?" инструкция вы говорите NSIS для запуска деинсталлятора из того же места, а не из временного каталога.
Используя «ExecWait» в дополнение к «_?» вы говорите NSIS дождаться завершения процесса удаления и возврата. Таким образом, вы достигнете того, что вам нужно.
см. http://nsis.sourceforge.net/Docs/Chapter3.html#3.2.2 для получения дополнительной информации.