如何在安装过程中修改.NETconfiguration文件?

我使用app.config文件来存储一些值(映射数据库的path,数据连接select)。 这些设置在用户机器上有所不同,我希望安装程序正确设置它们。 有没有一个安装程序,可以在安装过程中使用.NETconfiguration文件,并允许我创build一些对话框来帮助我填写这些值?

我知道这个问题可能类似于: 在安装过程中初始化user.config或app.exe.config ,但我不限于VS 2008安装项目,我想更改configuration文件中的设置。

编辑:我看到使用WIX是一种select,但我觉得像用大锤开核桃。 这可能是唯一的解决scheme,但我仍然希望有一些简单的东西。

我们使用WIX来更改应用程序的configuration文件。 它工作得很好,你需要在引用中添加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> 

这实际上取决于你正在使用什么创build安装程序,你在用什么?
在WIX教程中已经熟悉了。

如果您使用的是VS安装项目,您是否创build了自定义操作? 我已经将它们用于从XML值到部署数据库的所有事情。

我已经使用WIX工具集生成msi。 该工具允许您在安装过程中声明性地指定对诸如app.config之类的XML文件的更改。 问题是,虽然有一个重要的学习曲线。 searchwix的sourceforge。

我用一个XML插件使用NSIS来做到这一点。

我知道这是一个古老的问题,但我们不希望使用WIX或者一个非常简单的小安装程序。 我发现这篇文章详细解释了如何做到这一点。 它为我们完美的工作。

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