Показывать диалог обслуживания / восстановления / удаления, когда пользователь повторно устанавливает ту же самую версию WiX

Я новичок в Wix. Я использую WiX 3.10. Проблема в том, что когда я устанавливаю новый созданный мной .msi, все работает нормально. Однако, когда я переустанавливаю ту же самую версию (ничего не изменилось), она сразу переходит к экрану «Готово».

Что мы хотели бы сделать, так это сообщить пользователю, что у него / нее уже установлена ​​версия, или вместо этого отобразить диалоговое окно обслуживания / ремонта / удаления при запуске того же самого установщика на его компьютере.

Мне удалось предотвратить понижение версии с помощью элемента MajorUpgrade в WiX, мне просто нужно сообщить пользователю, что версия программного обеспечения уже установлена ​​на его компьютере, или открыть диалоговое окно обслуживания / ремонта / удаления.

на данный момент все, что у меня есть, это:

Используя этот код, когда я нажимаю кнопку «Установить» во второй раз, экран переходит прямо к экрану «Готово».

Я не нашел подобного обсуждения ни на форумах Wix, ни на сайте контроля качества пользователей Wix.

Любая помощь будет принята с благодарностью.

С Уважением

Джей


person JDS2016    schedule 03.08.2016    source источник
comment
какой интерфейс вы используете? Это один из WixUIExtension или внутренний пользовательский интерфейс?   -  person Brian Sutherland    schedule 03.08.2016
comment
Привет, мы используем WixUI_Common.   -  person JDS2016    schedule 04.08.2016
comment
извините, только что понял, что код не попал в сообщение quesiton: у меня есть ‹MajorUpgrade Schedule = afterInstallInitialize DowngradeErrorMessage = Более поздняя версия Eb Service Installer уже установлена ​​AllowSameVersionUpgrades = yes /› ‹MediaTemplate EmbedCab = yes /›   -  person JDS2016    schedule 04.08.2016
comment
Вы запускаете ту же самую сборку установщика или вы перестраиваете установщик и запускаете его снова, не меняя версию? Если вы используете product id = *, каждая сборка вашего установщика будет отличаться от других, даже если версия не изменилась.   -  person Brian Sutherland    schedule 05.08.2016


Ответы (1)


WixUI_Common поставляется с диалоговым окном восстановления / изменения / удаления, просто поместите его после вашего verityReadydlg, и во второй раз, когда вы установите ту же версию, он перейдет в dlg обслуживания.

1 1 1

person JDS2016    schedule 04.08.2016
comment
‹Диалог публикации = MaintenanceTypeDlg Control = RepairButton Event = NewDialog Value = VerifyReadyDlg› 1 ‹/Publish› ‹Диалог публикации = MaintenanceTypeDlg Control = RemoveButton Event = NewDialog Value = VerifyReadyDlg› 1 ‹/Publish› Control ‹Publish Dialog = MaintenanceTypeDlg Значение NewDialog = MaintenanceWelcomeDlg ›1 ‹/Publish› - person JDS2016; 04.08.2016