Как дождаться окончания удаления деинсталлятора? - PullRequest
3 голосов
/ 15 июля 2010

Используя NSIS, я хочу запустить деинсталлятор и дождаться его завершения, прежде чем продолжить работу с моим инсталлятором. Проблема в том, что деинсталлятор возвращается немедленно, хотя я использую ExecWait.

Я видел эту страницу здесь: http://nsis.sourceforge.net/When_I_use_ExecWait,_it_doesn%27t_wait, в которой упоминается, почему это происходит, а затем предлагаются некоторые предложения, но я не могу заставить мою работать.

Код, который я пытаюсь использовать:

ExecWait '"C:\path\to\uninstall.exe" /NCRC' $0
MessageBox MB_OK "uninstaller returned $0"

В котором отображается окно сообщения, в котором отображается сообщение «Программа удаления вернула 0» при запуске программы удаления. Кто-нибудь обходил это?

Спасибо

1 Ответ

4 голосов
/ 15 июля 2010

Страница, на которую вы ссылаетесь, рассказывает о ExecWait в целом, но также ссылается на Когда я использую ExecWait uninstaller.exe, он не ждет деинсталлятора , то есть конкретной информации NSIS, которую вы ищетеfor (_? = c: \ theinstalldir говорит программе удаления nsis не копировать себя в% temp% и выполнять там новую (не ожидающую) копию)

...