2016-08-05 3 views
-1

Данные, которые необходимо сохранить в папке, должны быть доступны для редактирования для каждого пользователя (кто имеет собственную конфигурацию), поэтому я не могу поместить его в ProgramData.
Прямо сейчас, у меня есть, но он устанавливается только в каталог AppData/Roaming для пользователя, который устанавливает программу.Возможно ли, что установщик WiX создает папку AppData/Local (или Roaming)/MyApp для каждого пользователя на машине?

ответ

4

Вы не можете сделать это непосредственно во время начальной установки. Существуют различные подходы, которые будут заполнять это по требованию для каждого пользователя, начиная от автоматического восстановления, вызванного из объявленных ярлыков, до использования активной настройки. Но без конкретной необходимости сделать это я бы предложил избегать их. Одной из наиболее убедительных причин избежать этого является то, что удаление удалит только файлы для текущего пользователя.

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

+0

И если приложение использует .NET 2 или новее, есть встроенная библиотека с расширенными возможностями, которая может работать, если на самом деле не нужны отдельные файлы. Параметры могут содержать полукомплексные объекты, включая массивы и документы XML. –

+0

Спасибо! Есть ли способ автоматически копировать данные из программных данных в роуминг-папки через WiX? – HelloDog