wix禁用修复添加删除程序,但不是来自maintenacetypedialog

时间:2011-12-02 10:47:17

标签: wix

我正在wix中创建安装程序。 我想禁用“添加删除程序”中的修复,但不能从MaintenanceTypDialog中禁用修复。

我已将ARPNOREPAIR设置为1.修复未按预期显示在ARP中,但“修复”按钮也会在“维护”对话框中被禁用。

任何人都可以帮忙。我是wix的新手。

2 个答案:

答案 0 :(得分:1)

维护对话框也依赖于ARPNOREPAIR属性值,这就是为什么在设置此属性时,两个位置都禁用了修复选项。

首先,您应该仔细考虑是否确实要在一个地方禁用修复,并将其保留在另一个地方。如果确实如此,则应按照您希望的方式修改“维护”对话框(例如,更改禁用“修复”按钮的条件),并将此修改后的对话框注入UI序列。

这对初学者来说可能听起来很可怕,这就是为什么我建议你从WiX.chm文件中的“自定义内置WixUI对话框集”文章开始。

答案 1 :(得分:0)

或者您可以在MaintenanceWelcomeDlg之后在CA中设置ARPNOREPAIR。它似乎对我有用。例如,

<CustomAction Id="CA_Set_ARPNOREPAIR" Property="ARPNOREPAIR" Value="1" />
<InstallUISequence>
  <Custom Action="CA_Set_ARPNOREPAIR" After='MaintenanceWelcomeDlg' />
</InstallUISequence>