Как выбрать вариант по умолчанию, когда Advanced Installer пытается установить программу, установленную в Windows? - PullRequest
0 голосов
/ 12 октября 2018

У меня есть программа установки "setup.exe", и я буду запускать ее в модели NoneUI (без вывода сообщений) в пользовательской программе Winform.

В обычной модели интерфейса пользователя, если установлена ​​та же версия программы, интерфейс отобразит 3 варианта: «изменить», «восстановить» и «удалить».Но я не знаю, что сделает установщик в тихой модели и как выбрать вариант по умолчанию?

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

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

Если вы хотите удалить программу, вы больше не будете запускать MSI, вы просто удалите ее.

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

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

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

0 голосов
/ 12 октября 2018

Операции технического обслуживания : Я не на 100% уверен в том, что вы спрашиваете, но давайте попробуем.Эти параметры «modify», «repair» и «remove» применяются к уже установленным продуктам.В совокупности это "maintenance operations".

Изменить относится к выбору, какие функции установки для установки или удаления (словари, SDK, справочная документация и т. Д.)...).Другими словами, вы можете добавлять или удалять части установки - в MSI, которые называются функциями (см. Информацию и ссылки ниже). Repair по существу повторно копирует файлы и настройки, которые были первоначально установлены еще раз (точное поведение может быть изменено, это может только восстановить отсутствующие файлы или может вызвать перезапись всего). Удалить удалит продукт.


Функции : Таким образом, вышеизложенное относится к ситуации, когда ваш продукт уже установлен.Затем вы можете отремонтировать, удалить или изменить.Однако существует также исходная установка, и вы можете контролировать, какие функции установлены во время такой установки.

Вот снимок экрана MSI, показывающий функции, доступные для выбора для установки:

Features

Чтобы контролировать, какие функции устанавливаются при автоматической установке, вы можете использовать свойство ADDLOCAL через командную строку(или вы можете установить в преобразовании):

msiexec.exe /I /L*V "C:\test.log" ADDLOCAL="FeatureName,AnotherFeatureName" /QN

Краткое описание параметров :

/I = run installation sequence
/L*V = "C:\Test.log"= verbose logging
ADDLOCAL="FeatureName,AnotherFeatureName" = Install these features locally 
/QN = run completely silently

Существует целое семействосвойства, относящиеся к ADDLOCAL - такие как REMOVE, ADVERTISE, REINSTALL, но в большинстве случаев ADDLOCAL будет достаточно, чтобы выбрать, какие функции установить.


Приведенный выше снимок экрана взят из старого моего ответа на superuser.com: Автоматический выбор функций для установки MSI без вывода сообщений .Он содержит более подробное объяснение функций и автоматической установки.

Здесь также есть ответ, который описывает установку и использование командной строки и преобразований.Это довольно сложный и чрезмерный, но вот ссылка в любом случае: Как лучше использовать файлы MSI (обратите внимание, что этот ответ принял странный оборот при написании, поэтому только верхняя половина относится к вашей теме- последнее стало странным обсуждением проблем MSI в целом).

...