Добавить отсутствующий файл с MSP патчем - PullRequest
1 голос
/ 23 мая 2011

Я создал установщик, развернул в нашей тестовой среде и получил ошибку из-за отсутствия DLL (он не был включен в файл wsx).Можно ли создать MSP-патч для доставки недостающей библиотеки DLL или лучше просто создать совершенно новый установщик?

Я пробовал использовать различные примеры, но постоянно получаю эту ошибку:

ОТЛАДКА: Ошибка 2356 : Не удалось найти шкаф в потоке: media1.cab.

Ответы [ 2 ]

3 голосов
/ 24 мая 2011

Патч может делать все, что может делать обновленный MSI, но это всего лишь механизм упаковки и доставки, который доставляет обновление более компактным способом . Следовательно, вы должны создать полную новую версию вашей установки, чтобы затем упаковать это новое обновление в виде патча.

Важно: не тратьте время на тестирование патча до того, как полное обновление будет работать должным образом. Это полная трата времени. Это создает только таинственные ошибки и является очень распространенной потерей времени в реальном времени.

Если ваша предыдущая установка не была запущена в производство и, следовательно, "в дикой природе", я бы не стал тратить время на патч. Для исправлений требуется много времени, чтобы создать и , еще больше времени для тестирования - существует множество добавленных рисков и сложности , и он предназначен лишь для того, чтобы быть удобным способом доставки небольших обновлений, таких как описанные вами, без необходимости распространения потенциально огромного нового файла MSI. Патчи для тестирования UAT или QA не распространены, если ваш продукт не очень большой и требует много времени для установки.

Лично я чувствую, что MSI полностью провалился, когда дело доходит до исправления . Это должна быть простая в использовании функция с добавленной стоимостью, но сама по себе она стала чрезвычайно сложной и проблемной.

1 голос
/ 23 мая 2011

Да, вы можете добавить отсутствующий файл через патч.Возможно, эта статья поможет: http://wix.sourceforge.net/manual-wix2/patch_building.htm

При создании патча вы всегда должны изменить существующий установщик.Вы не создаете новый установщик с нуля.Кроме того, никогда не удаляйте ресурсы из новой версии.Для исправления вы должны либо изменить, либо добавить ресурсы.

Что касается ошибки 2356, похоже, оригинальная установка как-то повреждена.Вы можете попробовать восстановить старую версию, прежде чем применять к ней патч.

...