在我的安装程序中,我有两个功能。如果禁用一个功能,则“浏览”按钮(以及包含INSTALLDIR路径的编辑控件)将从UI中消失。我怀疑这是因为两个Feature元素都使用相同的ConfigurableDirectory =“INSTALLDIR”属性:
<Feature Id="MYCLIENT" AllowAdvertise="no" ConfigurableDirectory="INSTALLDIR"
Title="Client component"
Description="Client Component" Level="1">
<ComponentGroupRef="Client1"/>
</Feature>
<Feature Id="MYMMC" AllowAdvertise="no" ConfigurableDirectory="INSTALLDIR"
Title="MMC Components"
Description="MMC Components" Level="1">
<ComponentGroupRef Id="MMC1"/>
<!-- MMC snap-in requires some client components -->
<ComponentGroupRef Id="Client1"/>
</Feature>
当取消选择/未安装功能时,我需要实施什么来防止INSTALLDIR浏览控件消失?
TIA
答案 0 :(得分:0)
“浏览”按钮与树中的所选要素相关。如果您已排除某些功能但仍处于选中状态,那么为此功能设置安装路径是没有意义的。所以“浏览”按钮被禁用。我想当你在树中选择另一个功能时,浏览按钮会再次出现。
顺便说一句,为什么两个功能都需要相同的ConfigurableDirectory?在同一个文件夹中安装系统的2个主要部分有点奇怪。我通常使用ConfigurableDirectory创建根特征,而所有子特征只能安装在预定义的子文件夹中。另一方面,如果你真的需要为2个功能设置不同的位置,你宁愿使用不同的ConfigurableDirectories。