Как я могу вызвать состояние компонента только при удалении, но не при обновлении?
Я хочу удалить файл File.txt
только при удалении, но не при обновлении. Мы используем <MajorUpgrade ...>
элемент для апгрейдов.
Когда мы используем следующий компонент, файл будет удаляться каждый раз, также при обновлении:
<Component Id="RemoveFileComponent" Transitive="yes" Directory="BIN" Guid="MY-GUID-HERE">
<Condition>REMOVE=ALL AND NOT UPGRADINGPRODUCTCODE</Condition>
<RemoveFile Id="RemoveTextFile" Name="File.txt" Directory="BIN" On="uninstall" />
</Component>
Атрибут <RemoveFile ... On="uninstall" />
ничего не меняет в этом поведении. Файл будет удален при обновлении.
ОБНОВЛЕНИЕ: В <CustomAction>REMOVE=ALL AND NOT UPGRADINGPRODUCTCODE</CustomAction>
условие корректно работает при обновлении или удалении, но такое же условие не работает правильно и в условии компонента: <Condition>REMOVE=ALL AND NOT UPGRADINGPRODUCTCODE</Condition>
, Я не заинтересован в использовании <CustomAction>
в сочетании с ассемблером или оператором командной строки как и нестабильный обходной путь. Я не запрашиваю решение с использованием <CustomAction>
описано здесь: Как добавить настраиваемое действие WiX, которое происходит только при удалении (через MSI)? Я хочу заставить его работать с условием компонента, описанного в моем вопросе.