如何在安装过程中修改.NET配置文件?

Tom*_*onk 38 .net installer configuration

我使用app.config文件来存储一些值(映射数据库的路径,数据连接选择).这些设置在用户计算机上有所不同,我希望安装程序将它们设置正确.是否有安装程序可以在安装过程中使用.NET配置文件,并允许我创建一些可以帮助我填写这些值的对话框?

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

编辑:我看到使用WIX是一个选项,但我觉得用大锤开裂核桃.它可能是唯一的解决方案,但我仍然希望有一些简单的方法.

Che*_*rra 61

我们使用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>
Run Code Online (Sandbox Code Playgroud)

它实际上取决于您使用什么来创建安装程序,您在使用什么?
已经参加了WIX教程.

  • 只是为了完整; 如果您在VS中执行此操作,则需要更改片段顶部的<Wix>标记以包含属性:xmlns:util ="http://schemas.microsoft.com/wix/UtilExtension.您还需要需要添加对WixUtilExtension的引用. (17认同)
  • 这就是我的意思是在引用中添加对wixUtilExtension.dll的引用.是的,你必须做你提到的. (2认同)