У меня есть установщик, написанный на Wix, который иногда предлагает пользователю перезагрузиться после восстановления. Как это может произойти и как убрать такое поведение?
Как заставить установщик не перезагружаться после ремонта?
Ответы (3)
Две техники:
1) Определите причину перезагрузки и избегайте ее. (Примеры: остановить службу, убить процесс)
2) Подавить перезагрузку с помощью свойства REBOOT. Обратите внимание, что восстановление может быть эффективным только после перезагрузки.
1, как правило, лучший способ пойти.
Наиболее частая причина перезагрузки после ремонта — это доступ установщика к файлу, на котором приложение все еще имеет блокировку. Обычно это можно найти в журналах восстановления (иногда требуется некоторое время, чтобы найти файл, с которым у установщика возникли проблемы). Если вы не можете найти нужную информацию в своих журналах, разместите их здесь, и мы рассмотрим их вместе с вами.
Добавьте это свойство в соответствующее место в файле WXS и убедитесь, что ничто не переопределяет его значение для чего-то другого. Это приведет к тому, что приглашение на перезагрузку не появится и перезагрузка не произойдет, даже если она была определена как необходимая при работе в автоматическом режиме, так как приглашения на автоматическую перезагрузку автоматически запускают последовательность перезагрузки, если вы не установите этот параметр. значение свойства на "ReallySuppress"
.
<Property Id="REBOOT" Value="ReallySuppress" />
Вы можете прочитать об этом здесь, если хотите: https://msdn.microsoft.com/en-us/library/windows/desktop/aa371101