Запись в AppData из проекта установки и развертывания
Я обновляю существующее приложение, которое устанавливается через проект установки и развертывания.
Старое приложение скопировало конфигурацию и файл базы данных в папку приложения в Program Files во время установки. Это работало нормально на Win 2000 и Win Xp (под учетной записью локального администратора). В Windows 7, однако, это не только осуждается, но по сути не работает из-за UAC.
Поэтому я хочу обновить приложение, чтобы записать его config/data в CommonApplicationData. В существующем проекте установки и развертывания вы можете легко выбрать несколько мест в качестве целей для копирования файлов. т.е. папка приложения, рабочий стол пользователя и файлы программы пользователя.
Я не вижу аналогичного способа заставить программу установки скопировать в папки AppData / CommonApplicationData. Существует ли это, и если нет, есть ли какие-нибудь простые исправления?
Спасибо!
1 ответ
Сделать правый клик | Добавить специальную папку | Пользовательская папка и назовите ее как угодно (подойдет общая папка данных приложения)
В сетке свойств папки измените атрибут DefaultLocation на [CommonAppDataFolder].
Добавить файл в папку, собрать и установить. Вы должны найти свой файл в C:\ProgramData в Windows 7.
Имейте в виду, я настоятельно рекомендую другие инструменты, такие как InstallShield и WiX, по проектам развертывания Visual Studio. Инструмент очень ограничен в том, что он может сделать, и вы в конечном итоге столкнетесь с кирпичной стеной.