Как удалить Настройки при удалении

Моя программа установлена с проектом Установки Visual Studio. Программа, когда выполнено, создает a user.config файл в его местоположении по умолчанию, так как я использую Настройки. Когда uninsalling, как я заставляю деинсталлятор удалять это user.config файл? Кроме того, как я заставляю деинсталлятор удалять папку в %AppData%?

6
задан configurator 23 April 2010 в 13:29
поделиться

2 ответа

Для этого вам нужно будет написать специальную задачу - по умолчанию (и по проекту) установщик удалит только то, что он установил, все, что было добавлено впоследствии, не является частью транзакции установки. Возможно, вы можете попробовать установить фиктивный файл для user.config, и вы сможете добавить папку AppData в установку (хотя она не будет удалена, если вы добавили файлы, находящиеся в ней во время удаления).

2
ответ дан 17 December 2019 в 07:02
поделиться

По сути, нельзя / не следует / не делать. Вот репост моего ответа на дубликат этого вопроса ...

Удаление всех пользовательских данных должно быть отдельным процессом после удаления.

Моя рекомендация (и то, что мы делаем) заключалась бы в создании отдельной утилиты «очистки», которую нужно запускать от имени администратора и которая будет перечислять профили, удаляя дополнительные пользовательские файлы. При желании он также может перечислять кусты реестра пользователей и удалять дополнительные ключи реестра и т. Д. У одного из наших клиентов есть свои собственные сценарии, которые делают именно это.

Затем я бы предоставил клиенту этот инструмент очистки и сказал после удаления, если вы хотите удалить все пользовательские данные, используйте его.

Рассмотрите следующие случаи

  • Клиент удаляет установку перед установкой новой версии
  • Основные обновления (которые удаляют старую версию, поэтому вам необходимо знать об этом)
  • Случайное удаление пользователем, которому не следует ' Я сделал это, но имел возможность сделать это

. Если вам необходимо удалить данные , то самый чистый способ удалить эти данные для всех пользователей, о которых я могу думать, - это воспользоваться преимуществом Активная установка и используйте ее для запуска сценария для каждого пользователя, который запускается при следующем входе каждого пользователя в систему. Данные будут удалены не во время удаления, а при следующем входе в систему. И вы оставите несколько записей в реестре, однако это будет с меньшей вероятностью вызвать повреждение, чем перечисление профилей пользователей.

2
ответ дан 17 December 2019 в 07:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: