Я использую WiX (в настоящее время 3,6) для создания установки для моего приложения. Следующий шаг - создать патчи, когда что-то нужно изменить. Поскольку я использую тепло для создания автоматически компонентов для большого количества файлов, эти компоненты ссылаются с помощью ComponentGroup. К сожалению, PatchFamily позволяет использовать только ComponentRefs, а не ComponentGroupRefs. Поскольку эти компоненты генерируются автоматически, я ищу способ включить создание патча.Создайте патч с помощью WiX со многими компонентами
Как я пытался документировано здесь: Patchwork
В настоящее время я изучаю возможность использования административные монтируют и сделать различия между ними.
Кто-нибудь нашел решение?
Создание патчей с использованием чисто WiX включает ссылки на все компоненты в patch.wxs. Затем обновление сравнивает старые и новые файлы и включает только измененные. Поскольку из тепла выделяются компоненты, я дал ComponentGroups в основном wxs - я не «знаю» компоненты, и я не могу вводить их вручную. Просто слишком много. – Sascha
Независимо от того, что я предвижу проблемы с этим для вас. Патчи и обновления также работают, сравнивая GUID компонента, чтобы узнать, что установлено, а что нет. Если у вас нет доступа к старым идентификаторам GUID и просто дайте все новый GUID (по крайней мере, по моему опыту), вы закончите работу с программой (или, по крайней мере, ее частями), установленной дважды на клиентской машине. На самом деле сложно работать с установками с многочисленными файлами. Мой текущий проект содержит около 10 000 различных файлов, распространяемых более чем на 20+ MSI. Однако после первоначальной настройки это всего лишь случай обслуживания и поддержки. – Adkins
Поскольку тепло производит Guid = "*" для Компонентов, именно то, что вы описываете, происходит. Я пишу свой «нагреватель», который помнит однажды назначенные Гиды. – Sascha