#wix #upgrade
#wix #Обновление
Вопрос:
Я хочу использовать незначительные обновления, но у меня есть два вопроса о требованиях к этому типу обновления.
Возможно ли это:
- чтобы удалить файл (не ключевой путь) из компонента, который используется только в одной существующей функции (и после удаления компонент все еще не пуст)?
- чтобы удалить существующий компонент (я предполагаю, что это нарушит правила)?
Спасибо за помощь!
Ответ №1:
для удаления файла (не ключевого пути) из компонента, который используется только в одной существующей функции
Вы можете удалить его из своего обновленного пакета, но обновление не удалит его на целевой машине. Компонент обновляется, только если изменен путь к его ключу: http://msdn.microsoft.com/en-us/library/windows/desktop/aa368599 (v= против 85).aspx
Чтобы удалить его, вы можете попробовать использовать пользовательское действие, но я не уверен, что это сработает. Лучший подход для удаления ресурсов при обновлении — это использование основного обновления.
чтобы удалить существующий компонент (я предполагаю, что это нарушит правила)?
Если вы удалите компонент, это больше не будет незначительным обновлением. Это относится к категории основных обновлений.
Ответ №2:
Это возможно, но не рекомендуется. Изменение кода компонента документирует, что добавление или удаление файлов требует изменения кода компонента. Если вы этого не сделаете, что произойдет, если правила компонентов будут нарушены, описывает некоторые из того, что может пойти не так. Обратите внимание, что незначительные обновления часто особенно требовательны к правилам компонентов.
Удаление компонента при незначительном обновлении также запрещено. Вместо этого некоторые люди рекомендуют пометить этот компонент как транзитивный и присвоить ему ложное условие, чтобы он был удален во время незначительного обновления. Обратите внимание, что правила компонента по-прежнему применяются к компоненту, который существует только для удаления.