Если у меня два пакета MSI:

Пакет A) 2.0.1234 (initial_product.msi) пакет B) 2.0.2300 (updated_product.msi)

Я могу создать патч в installshield, который генерирует MSP из двух для обновления 2.0.1234 до 2.0.2300. Что странно, новые файлы из updated_product.msi не устанавливаются. Однако файлы, которые обновляются, обновляются. Новые файлы находятся в разделе AlwaysInstal.

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

Что может привести к тому, что они не будут установлены? MSP запускается со значением по умолчанию REINSTALLMODE = omus REINSTALL = ALL

Благодарность

-1
Dan Smith 30 Сен 2010 в 03:09

2 ответа

Лучший ответ

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

(Только что заметил, что последние пару лет я оставил этот вопрос открытым и хотел убедиться, что кто-нибудь еще, столкнувшийся с этой проблемой, сможет найти ответ на этот вопрос)

0
Dan Smith 29 Апр 2012 в 01:40

Есть вероятность, что имена MSP не соответствуют исходным именам (учитывается регистр! См.: http://msdn.microsoft.com/en-us/library/aa368060 (v = VS.85) .aspx )?

0
Andrew D 30 Сен 2010 в 03:51
Неа - упускаются только новые файлы, обновляются те, что из оригинала.
 – 
Dan Smith
30 Сен 2010 в 04:16
Я думаю, это связано с тем, что я нацелен на более чем один MSI и использую автоматическое секвенирование ... хотя я не могу найти никакой информации о том, как я мог бы их секвенировать вручную, все, что я нашел является общим и не дает никаких реальных примеров.
 – 
Dan Smith
30 Сен 2010 в 04:41