在我的安装程序中,我有两个特性。如果我禁用了一个功能,Browse按钮(和包含INSTALLDIR路径的编辑控件)将从UI中消失。我怀疑这是因为两个功能元素使用了相同的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浏览控件消失?
提亚
发布于 2012-08-28 18:58:12
浏览按钮与树中所选的功能相关。如果您已经排除了某些功能,但它仍然处于选中状态,那么为该功能设置安装路径是没有意义的。因此,浏览按钮被禁用。我想当您选择树中的另一个功能时,Browse按钮将再次出现。
顺便问一下,为什么两个功能都需要相同的ConfigurableDirectory?将系统的两个主要部分安装在同一个文件夹中有点奇怪。我通常使用ConfigurableDirectory创建一个根特性,而所有子特性只能安装在预定义的子文件夹中。另一方面,如果你真的需要为两个功能设置不同的位置,你更愿意使用differect ConfigurableDirectories。
https://stackoverflow.com/questions/12057957
复制相似问题