WIX. Как не переустановить функцию во время ремонта?

В WIX я хотел бы, чтобы функция была установлена ​​и удалена нормально, но не была затронута во время ремонта.

Я не смог найти условие, которое позволило бы мне сделать это. Мои попытки не увенчались успехом: функция переустанавливается при ремонте (что мне не нужно) или не удаляется.

Это пример, который я пробовал в прошлом:

<Feature Id="aFeature" Title="A Features" Level="1">
  <ComponentRef Id="aComponent" />
  <Condition Level="0">
    <![CDATA[WixUI_InstallMode="Repair"]]>
  </Condition>
</Feature>

Каково правильное условие, чтобы удалить, но не переустановить во время ремонта? Или что я делаю не так?

Спасибо.

2 ответа

Решение

Это работает для меня:

<Feature Id="aFeature" Title="A Features" Level="1">
  <ComponentRef Id="aComponent" />
  <Condition Level="0">
     <![CDATA[REINSTALL<>""]]>
  </Condition>
</Feature>

Таким образом, во время восстановления функция игнорируется и не затрагивается, но обычно удаляется

Единственный способ, которым я могу придумать, - это дать всем компонентам этой функции пустой путеводитель, это сигнал установщику Windows не делать с ними ничего, например, восстанавливать их, исправлять их, удалять их. Если товар уже отправлен, для этого уже слишком поздно. Однако это радикальный шаг, который обычно необходим, только если вы хотите установить некоторые вещи для временного использования, а затем удалить их. Таким образом, вы боретесь с рамками здесь. Похоже, у вас есть проблема, которую может решить отключение восстановления функций, так почему бы не описать проблему, чтобы увидеть, есть ли другое решение?

Другие вопросы по тегам