Удаление диалогов по умолчанию из MSI - PullRequest
0 голосов
/ 21 сентября 2018

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

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

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

Альтернативы WiX : После описания функции записи WiX я начал думать, что это может быть не то, что вам нужно для выполнения своей работы.Это сложный и сложный процесс для разработчика - хотя он должен быть полностью управляемым для разработчика, чтобы реализовать то, что ему нужно, без особых проблем.Гибкость очень высокая.

Опции коммерческого инструмента развертывания Installshield и Advanced Installer имеют GUI-интерфейсы, которые вы можете использоватьsetup.exe, который запускает MSI-файлы с параметрами, которые вы собираете.

Installshield

В Installshield есть довольно новая функцияв последних выпусках Installshield Suite Projects .Я не уверен, в каких выпусках он доступен (более высокие выпуски - например, «Премиум»).Он позволяет устанавливать различные файлы «по порядку»: MSI, MSP, EXE, MSU, etc....

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

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

Расширенный установщик

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

Функции для этого центра вокруг представлений "Prerequisites", "Build "и" Dialogs ".В представлении «Build» установите вывод EXE.В «Prerequisites» выберите элемент верхнего уровня «Packages», чтобы получить список встроенных доступных предпосылок.Щелкните правой кнопкой мыши «Pre-Install», чтобы добавить свой пакет.Я не знаком с деталями диалогов, но вы можете работать с ними в представлении «Dialogs».Хорошая новость - не ракетостроение.

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

Iостановлюсь на этом.Слишком много ссылок уже.

0 голосов
/ 22 сентября 2018

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

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

Обратите внимание, что сам установщик WiX использует такой пользовательский графический интерфейс записи (и, следовательно, работает в режиме реального времени).пример того, как может выглядеть такой пользовательский графический интерфейс).И - вот собственный исходный код установщика WiX для его приложения Managed Bootstrapper - для самого фактического установщика WiX 3 - другими словами.


Запись

Запись - bootstrapper, downloader, chainer и engine.Каждый пакет Burn (setup.exe) имеет «Bootstrapper Application», который по существу составляет графический интерфейс установки - он управляет механизмом Burn.Существует стандартное приложение начальной загрузки , которое используется по умолчанию, но вы можете полностью написать собственный графический интерфейс начальной загрузки.Приложение начальной загрузки (BA) - это библиотека DLL, загружаемая механизмом Burn.

Стандартное приложение начальной загрузки 1041 * можно настраивать различными способами, тогда как пользовательское приложение начальной загрузки 1043 * полностьюнастраиваемый - очевидно.Это загрузочное приложение может быть написано в управляемом коде или в собственном коде.

Прочтите документацию по Burn, начиная с этой страницы: Сборка пакетов установочного пакета .

1 - Стандартное приложение Bootstrapper

Вот выдержка из официальной документации WiX, чтобы увидеть базовую разметку, необходимую для " summon " стандартного приложения загрузчика, которое нужно скомпилировать вваш setup.exe (повторяйте " 668 - сосед зверя " несколько раз и нажимайте "Build", если вы находитесь в Visual Studio):

<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Bundle>
    <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />
    <Chain>
    </Chain>
  </Bundle>
</Wix>

Позвольте мне не дублировать больше контента, но вместо этого вышлю вам официальную документацию по теме: Работа со стандартным приложением начальной загрузки WiX .

И перед переездомк пользовательским загрузчикам:

2 - Пользовательское приложение Bootstrapper

Написание пользовательского приложения загрузчика, насколько я понимаю, не прогулка в парке, и нечто-то у меня когда-либо былоЕсть шанс сделать.Документация кажется скудной: Создание пользовательского приложения Bootstrapper (официальная документация, о которой я знаю).

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


Некоторые другие :

...