Как изменить файлы конфигурации .NET во время установки? - PullRequest
38 голосов
/ 14 ноября 2008

Я использую файл app.config для хранения некоторых значений (путь к базе данных сопоставления, выбор подключения к данным). Эти параметры отличаются на пользовательских машинах, и я хотел бы, чтобы установщик установил их правильно. Есть ли установщик, который может работать с файлами конфигурации .NET во время установки и позволяет мне создавать диалоговые окна, которые помогут мне заполнить эти значения?

Я знаю, что этот вопрос может быть похож на: Инициализация user.config или app.exe.config во время установки , но я не ограничен проектом установки VS 2008, и я хочу изменить настройки в файлы конфигурации.

РЕДАКТИРОВАТЬ: я вижу, что использование WIX является одним из вариантов, но мне хочется расколоть грецкий орех кувалдой. Возможно, это единственное решение, но я все еще надеюсь на что-то простое.

Ответы [ 5 ]

58 голосов
/ 14 ноября 2008

Мы используем WIX, чтобы изменить файл конфигурации приложения. Он работает очень хорошо, вам нужно добавить wixUtilExtension.dll в ссылку.

Образец WIX:

<Component Id="ChangeConfig" Guid="[YOUR_GUID_HERE]">
   <File Id="App.config" Name="MyApplication.exe.config" Vital="yes" KeyPath="yes" Source="[Path to project dir]\app.config" />
   <util:XmlFile Id="AppConfigSetConnStr" Action="setValue" Permanent="yes" File="[#App.config]"            
        ElementPath="/configuration/connectionStrings/add[\[]@name='MyDatabaseName'[\]]" Name="connectionString" 
        Value="Your Connection string values here" />

</Component>

Это на самом деле зависит от того, что вы используете для создания установщика. Что вы используете?
Ознакомьтесь с WIX Tutorial .

3 голосов
/ 14 ноября 2008

Если вы используете проект установки VS, вы создали собственное действие? Я использовал их для всего: от поиска XML-значений до развертывания баз данных.

1 голос
/ 14 ноября 2008

Я использовал NSIS с плагином XML для этого.

1 голос
/ 14 ноября 2008

Я использовал набор инструментов WIX для создания msi. Инструмент позволяет декларативно указывать изменения в файлах XML, таких как app.config, во время установки. Проблема в том, что существует значительная кривая обучения. Поиск sourceforge для wix.

0 голосов
/ 10 февраля 2016

Я знаю, что это старый вопрос, но мы не хотели использовать WIX и для очень простого небольшого установщика. Я нашел эту статью, которая объясняет во многих деталях, как именно это сделать. У нас это отлично сработало.

http://www.c -sharpcorner.com / UploadFile / ddoedens / CustomUI11102005042556AM / CustomUI.aspx

...