我正在为我的 ASP.net 应用程序创建一个 Wix 安装程序包,但在尝试添加多个 Web.config 文件时出现错误,即使它们位于不同的目录中。
到目前为止,我的代码如下所示:
<Directory Id="INSTALLLOCATION" Name="Site" >
<Component Id="Web.Config" Guid="F9D6C6E5-887E-4D90-BDEB-5D16AAA8F194">
<File DiskId="1" KeyPath="yes" Source="$(var.SolutionDir)\publish\Web.config" />
</Component>
<Directory Id="Account.Dir" Name="Account">
<Component Id="Account.Web.Config" Guid="53FC1820-3ADD-41C0-92D6-9A66348C33A4">
<File DiskId="1" KeyPath="yes" Source="$(var.SolutionDir)\publish\Account\Web.config" />
</Component>
</Directory>
</Directory>
<Feature Id="DefaultFeature" ConfigurableDirectory="TARGETDIR" Level="1">
<ComponentRef Id="Web.Config"/>
<ComponentRef Id="Account.Web.Config"/>
<Feature>
我收到的错误消息是:"Duplicate symbol 'File:Web.config' found. This typically means that an Id is duplicated. Check to make sure all your identifiers of a given type (File, Component, Feature) are unique."
据我所知,您不能使用 WIX 两次安装同一个文件,但这些文件是位于不同位置且名称相同的不同文件。当我重命名其中一个文件时,安装程序按预期工作,但这无济于事,因为这两个文件都需要命名为 Web.config。我认为 ID 或 GUID 不是问题,因为它们是唯一的并且更改文件名有效。
有人有想法吗?