Установщик Wix, панель управления Windows отображает 2 записи, а удаление неактивно - PullRequest
2 голосов
/ 04 апреля 2019

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

У меня есть проблема, при которой файл .msi, сгенерированный моим установщиком Wix, устанавливается правильно. Но в Windows 10 на странице «Приложения и функции» показаны 2 записи для моего приложения, а также на обеих записях кнопка «Удалить» выделена серым цветом.

Я довольно потерян, какая часть .wxs отвечает за то, что отображается в Панели управления, любая помощь будет оценена.

Ответы [ 2 ]

1 голос
/ 05 апреля 2019

Быстрый запуск WiX : WiX не является тривиальным для обучения - есть кривая обучения, но это не ракетостроение.Может быть, я могу предложить эту рекомендацию по быстрому запуску WiX (хаотично, но с голосом - должно быть полезно).В частности, может пригодиться раздел «Hello World» - если вы не знаете WiX.

Ответы : Что касается конкретных вопросов:

  • Failed Major Upgrade : две записи в Add / Remove Programs обычно означают, что основное обновление завершилось неудачно, поэтому теперь установлено две версии вашегопродукт вместо одного (серьезное обновление - это техническая деинсталляция старой версии и установка новой версии - под капотом).Вот длинный ответ на эту тему: При выполнении основного обновления в Wix создается 2 записи в разделе «Установка и удаление программ» .
  • Embedded Setup.exe : MSI также может установить устаревший стиль setup.exe как часть своей собственной установки.Это может привести к нескольким записям в Add / Remove Programs.
  • MajorUpgrade : чтобы исправить серьезное обновление, вам нужно обратиться к источникам WiXочевидно.Обычно люди используют элемент MajorUpgrade для настройки основных обновлений (есть более подробные варианты с использованием других элементов).Подробнее об этом см. В отдельном разделе ниже.
  • Код продукта : Если у вас установлены две версии одного и того же продукта, у вас есть разные коды продуктов для них.Чтобы найти коды продуктов, вот несколько советов: Как найти GUID продукта с установленной установкой MSI? После получения кодов продуктов вы можете удалить их с помощью msiexec.exeкомандная строка.
  • Удаление : Вы можете удалить файлы MSI множеством способов, вот ссылка: Удаление файла MSI изкомандная строка без использования msiexec .Рекомендуем использовать msiexec.exe в разделе 3 следующим образом:

    msiexec.exe /x {Product-Code}
    

Основные обновления WiX : WiX представил «элемент удобства», чтобы контролировать серьезное обновление довольно давно.Идея заключалась в том, чтобы сделать реализацию проще.Вот некоторые подробности: Majorupgrade или Upgrade ID, который предпочтителен для Major upgrade?

Inlined:

<MajorUpgrade DowngradeErrorMessage="Can’t downgrade." />

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

Основные технические характеристики обновления : Ключевыми проблемами для крупного обновления является то, что код обновления остается стабильным (в некоторых случаяхсделать это без, но оставив это пока).Кроме того, вам нужен новый код продукта, увеличенная версия продукта (одна из первых 3 цифр) и новый код пакета.Если какое-либо из этих изменений не будет выполнено, вы можете получить две записи в разделе «Установка и удаление программ» (не удалось выполнить обновление во время работы).


Некоторые ссылки :

0 голосов
/ 05 апреля 2019

Спасибо Штейну Осмулу за его ссылку на документацию.Я смог выяснить, почему мой msi делал то, что делал.

Основным .wxs было отключение Remove со свойством

<Property Id="ARPNOREMOVE" Value="1" />

Поэтому удаление, которое позволило мне удалить изснова панель управления Windows.

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

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...