Моя программа установлена с проектом Установки Visual Studio. Программа, когда выполнено, создает a user.config
файл в его местоположении по умолчанию, так как я использую Настройки. Когда uninsalling, как я заставляю деинсталлятор удалять это user.config
файл? Кроме того, как я заставляю деинсталлятор удалять папку в %AppData%
?
Для этого вам нужно будет написать специальную задачу - по умолчанию (и по проекту) установщик удалит только то, что он установил, все, что было добавлено впоследствии, не является частью транзакции установки. Возможно, вы можете попробовать установить фиктивный файл для user.config, и вы сможете добавить папку AppData в установку (хотя она не будет удалена, если вы добавили файлы, находящиеся в ней во время удаления).
По сути, нельзя / не следует / не делать. Вот репост моего ответа на дубликат этого вопроса ...
Удаление всех пользовательских данных должно быть отдельным процессом после удаления.
Моя рекомендация (и то, что мы делаем) заключалась бы в создании отдельной утилиты «очистки», которую нужно запускать от имени администратора и которая будет перечислять профили, удаляя дополнительные пользовательские файлы. При желании он также может перечислять кусты реестра пользователей и удалять дополнительные ключи реестра и т. Д. У одного из наших клиентов есть свои собственные сценарии, которые делают именно это.
Затем я бы предоставил клиенту этот инструмент очистки и сказал после удаления, если вы хотите удалить все пользовательские данные, используйте его.
Рассмотрите следующие случаи
. Если вам необходимо удалить данные , то самый чистый способ удалить эти данные для всех пользователей, о которых я могу думать, - это воспользоваться преимуществом Активная установка и используйте ее для запуска сценария для каждого пользователя, который запускается при следующем входе каждого пользователя в систему. Данные будут удалены не во время удаления, а при следующем входе в систему. И вы оставите несколько записей в реестре, однако это будет с меньшей вероятностью вызвать повреждение, чем перечисление профилей пользователей.