Запись в AppData из проекта установки и развертывания - PullRequest
5 голосов
/ 25 августа 2010

Я обновляю существующее приложение, которое устанавливается через проект установки и развертывания.

Старое приложение скопировало конфигурацию и файл базы данных в папку приложения в Program Files во время установки. Это работало нормально на Win 2000 и Win Xp (под учетной записью локального администратора). В Windows 7, однако, это не только осуждается, но по сути не работает из-за UAC.

Поэтому я хочу обновить приложение, чтобы записать его config / data в CommonApplicationData. В существующем проекте установки и развертывания вы можете легко выбрать несколько мест в качестве целей для копирования файлов. т.е. папка приложения, рабочий стол пользователя и файлы программы пользователя.

Я не вижу аналогичного способа сообщить программе установки о необходимости копирования в папки AppData / CommonApplicationData. Это существует, и если нет, то есть ли какие-нибудь простые исправления?

Спасибо!

1 Ответ

5 голосов
/ 25 августа 2010

Правый клик |Добавить специальную папку |Пользовательская папка и назовите ее как угодно (Общая папка с данными приложения подойдет)

В таблице свойств папки измените атрибут DefaultLocation на [CommonAppDataFolder].

Добавьте файл в папку, сборка и установка.Вы должны найти свой файл в C: \ ProgramData в Windows 7.

Обратите внимание, я настоятельно рекомендую другие инструменты, такие как InstallShield и WiX, в проектах развертывания Visual Studio.Инструмент очень ограничен в том, что он может делать, и вы в конечном итоге столкнетесь с кирпичной стеной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...