App.Config应该是应用程序的配套文件还是自己的组件?

时间:2010-07-08 12:17:04

标签: wix windows-installer

当我创建一个Windows Installer程序包(比如说使用WiX)并安装应用程序App.exe以及App.exe.config时,如果配置文件有自己的组件,或者它应该是一个配套文件应用程序可执行文件?

<Component Id="C.App.exe">
  <File Source="App.exe"/>
</Component>
<Component Id="C.App.exe.config">
  <File Source="App.exe.config"/>
</Component>

<Component Id="C.App.exe" Guid="PUT-GUID-HERE">
  <File Id="F.App.exe" Source="App.exe"/>
  <File Source="App.exe.config" CompanionFile="F.App.exe"/>
</Component>

如果我根据某些外部属性(比如 test release 等运行时环境)安装不同的App.exe.config文件,那会影响我应该选择哪个选项使?

2 个答案:

答案 0 :(得分:4)

答案取决于它。 Yan提到的Rob的文章是一本很好的读物,这是另一篇:

定义安装程序组件 http://msdn.microsoft.com/en-us/library/aa368269(VS.85).aspx

诀窍在于了解基于密钥文件的成本核算和维修方式,默认版本控制规则的工作原理,未来计划如何为应用程序提供服务以及基于此做出决策。

答案 1 :(得分:1)

建议将单个资源(文件,注册表项等)放入单个组件中。在这种情况下,此资源是组件的KeyPath。 Windows Installer监视每个组件的关键路径,以确定是否值得安装,修复,升级等。

Rob Mensching的

This article详细解释了这些事情。