Как включить файлы, которые изменились, но имеют тот же номер версии в MSP с помощью WiX Pyro?

Я создал файл патча MSP, используя WiX Pyro( используя только набор инструментов WiX). Но создается впечатление, что созданный файл MSP не включает файлы, измененные по содержанию, но не измененные по номеру версии. Как я думаю, большинство этих файлов на самом деле не изменяются в основном содержимом, а просто перестраиваются в Visual Studio. Таким образом, может быть желательным поведение, которое делает Pyro.

Но мой клиент спросил меня, почему файлы, установленные последней версией MSI, и файлы, обновленные MSP-патчем, отличаются. Итак, я хочу знать, есть ли способ включить эти файлы в патч MSP, или я могу сказать своему клиенту, что эти два набора файлов (последний MSI, старый MSI + MSP) одинаковы, чтобы вы могли безопасно использовать продукт? (Конечно, я думаю, что мое управление версиями файлов довольно плохое и не систематическое, но правила версий MSI кажутся мне слишком строгими и несколько негибкими.)

1 ответ

Решение

Правила обновления файлов установщика Windows - это то, чем они являются, и я не думаю, что вы их измените. Стандартное правило заключается в том, что вы сообщаете Windows, что файл обновляется путем увеличения версии, а затем во время установки более поздняя версия заменяет более низкую версию. Вот почему инструменты, которые генерируют патчи, также используют правило версии - почему они должны включать файлы, которые не имеют более высокой версии? Пакеты обновлений, исправления, исправления и т. Д. Работают на основе версий файлов.

Если вы хотите использовать любые версии файлов, которые вам нравятся, тогда прекратите использовать патчи и сделайте серьезное обновление, которое выполняет RemoveExistingProducts заранее, чтобы вы получили эквивалент удаления всех старых файлов с последующей установкой всех новых.

Кстати, если это файлы управляемого кода, и вы считаете, что увеличение версии файла означает увеличение версии сборки, то используйте AssemblyFileVersion, чтобы увеличить версию файла и оставить версию сборки в покое.

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