Использование обновляемых файлов FlowDocument XAML в качестве справочной системы WPF

Я создаю простую справочную систему для своего приложения WPF, используя XAML FlowDcouments (только файлы .xaml, без кода программной части). Я просто добавил их в свой проект с помощью Build Action = Resource, и я могу загружать и отображать их по мере необходимости.

Теперь я пытаюсь сделать его немного более гибким, поскольку после установки приложения я хочу, чтобы пользователь мог загружать дополнительные (или более новые версии существующих) файлов справки FlowDocument XAML. Учитывая это, мне сейчас интересно, где лучше всего хранить эти файлы. Несколько вопросов/идей:

  • Могу ли я оставить их как файлы ресурсов и перезаписать или добавить новые файлы по мере необходимости? Я не могу найти пример того, как добавлять/редактировать ресурсы во время выполнения в SO/Google. Это вообще возможно?

  • Если нет, есть ли рекомендуемое место для хранения этих файлов? Они должны быть доступны для всех пользователей, чтобы они не могли зайти в каталог пользователя — им пришлось бы зайти в каталог программы. Есть ли у каталога программы доступ для записи (я помню, раньше у меня были проблемы с этим)?

  • Любые другие идеи?

Спасибо.


person Ross    schedule 22.06.2011    source источник


Ответы (1)


Файлы ресурсов встроены в исполняемый файл, поэтому их нельзя изменить.

Что касается общего места для размещения загруженных файлов справки, вы не можете хранить их в «Program Files», поскольку для записи туда вам потребуются права администратора.

Я предлагаю вам поместить их в SpecialFolder.CommonApplicationData (см. http://msdn.microsoft.com/en-us/library/system.environment.specialfolder(v=vs.80).aspx), который определяется как "Каталог, служащий общим хранилищем для данных приложения, которые используются всеми пользователями."

person Philipp Schmid    schedule 22.06.2011