I overrode OnBeforeUninstall
, чтобы остановить проект установки моего приложения при его удалении при определенных обстоятельствах, но похоже, что он просто не вызван и не имеет никакого эффекта.Предотвратить удаление в проекте установки с помощью OnBeforeUninstall
protected override void OnBeforeUninstall(IDictionary savedState)
{
if (ApplicationIsBusy())
throw new ApplicationException("Prevent uninstall while application busy.");
}
Я могу отменить удаление путем переопределения метода Uninstall
, а затем проект установки уже закрыл мое заявление. Как выполнить «неудачу» попытки удаления, когда мое приложение занято до, проект установки пытается закрыть его при запуске и прерывает мой рабочий процесс?
Попробуйте написать там сообщение трассировки: http://msdn.microsoft.com/en-us/library/system.diagnostics.trace.writeline.aspx, чтобы проверить, вызван ли этот метод или нет. Вы можете проверить сообщения трассировки с помощью debugView http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx – 2010-11-28 15:23:06