我正在使用WIX3测试版和功能树用户界面。我将把几个程序集作为单独的组件安装到程序文件中的自定义子目录以及GAC中。另外,我希望将相同程序集的调试版本打包为一个组件,并让用户决定是否安装它们。现在,默认情况下禁用带有调试程序集的此功能,但不管安装了什么调试程序集。
在相关代码段下方:
<DirectoryRef Id="INSTALLDIR">
<Directory Id="bin" Name="bin">
<Directory Id="Debug" Name="Debug">
<Component Id="DebugComponent" Guid="PUT-GUID-HERE">
<File Id="DebugAssemblyXXX" DiskId="1" Source="Debug\XXX.dll"></File>
</Component>
</Directory>
<Directory Id="Release" Name="Release">
<Component Id="ReleaseComponent" Guid="PUT-GUID-HERE">
<File Id="ReleaseAssemblyXXX" DiskId="1" Source="Release\XXX.dll"></File>
</Component>
</Directory>
</Directory>
</DirectoryRef>
<Feature Id="All" ConfigurableDirectory="INSTALLDIR" Title="Title" Level="1"
Display="expand" AllowAdvertise="no" Absent="disallow" Description="Desc">
<Feature Id="DebugAssemblies" Title="Debug Assemblies" Level="1000" Absent="allow"
AllowAdvertise="no" Description="Debug versions of assemblies.">
<ComponentRef Id="DebugComponent" />
</Feature>
<Feature Id="ReleaseFeature1" Title="Feature" Level="3"
AllowAdvertise="no" Description="Another description">
<ComponentRef Id="ReleaseComponent"/>
</Feature>
</Feature>
奇怪的是,如果我再次运行msi文件并转到“更改”并禁用调试功能,调试程序集将被删除,例如,这次逻辑工作正常。
默认安装级别为3。
有什么建议吗?