2009-10-11 3 views
2

Я развертываю приложение с использованием ClickOnce, проблема заключается в том, что файл конфигурации (xxx.exe.config) не встроен в пакет, и нет возможности включить его. Еще одна проблема с конфигурацией заключается в том, что когда я пытаюсь вручную записать ее в каталог, где он находится в delopyed (Environment.CurrentDirectory), я получаю исключение - у меня нет никаких прав на это.Развертывание конфигурации ClickOnce - файлы конфигурации

Любые идеи по развертыванию приложения вместе с файлом конфигурации? (И сделать его записи, поскольку приложения во время выполнения ТИ изменяет значения конфигурации.)

Заранее спасибо

+2

Вы попробовали вариант «копировать в выходной каталог»? (окно свойств в VS) – Restuta

ответ

2

Файл конфигурации должен публиковаться автоматически; если нет, убедитесь, что он настроен на копирование для вывода, и (если это не удается) проверьте файлы публикации (свойства проекта -> публикация -> файлы приложений; файл конфигурации должен быть помечен как «include (auto)» или «include «).

Вам не следует пытаться обновлять что-либо в каталоге установки приложения. Это плохая идея обычно (так как вы не можете предположить, что можете обновлять «программные файлы», если только вы не администратор), но то же самое верно и для ClickOnce.

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

1

При нажатии на свойства проекта и перейдите на вкладку Publish свойств проекта, щелкните «Файлы приложений» ... затем установите флажок «Показать все файлы». Оттуда вы увидите возможность выбрать конфигурационный файл приложений.

По моему опыту, файл exe.config, как правило, устанавливается автоматически.

3

Вы также можете изменить действие сборки для файлов, которые вы хотите включить в развертывание ClickOnce: Properties for a file → Build Action → set to "Content", это добавит файл в список Application files в Publish вариантах проекта.

Если вам нужно опубликовать файл из указанного проекта, я не нашел лучшего решения, а не Add → Existing Item → On "Add" button, select "Add as Link", а затем установил действие на Content и просмотрел список опубликованных файлов.

Смежные вопросы