Можно ли определить полученную командную строку после запуска установщика .msi?

Если мне нужна автоматическая установка, есть ли простой способ запустить установщик, выбрать нужные параметры и затем определить параметры / переключатели msiexec, необходимые для эквивалентной установки? (Желательно ничего не устанавливать - не нажимая кнопку "Готово")

Или копаться в базе данных MSI все, что вы можете сделать, чтобы найти нужные свойства?


person Chad Schouggins    schedule 21.05.2018    source источник
comment
Эй, гитарист?   -  person Stein Åsmul    schedule 21.05.2018
comment
Боюсь, я не разделяю вашего чувства милосердия к широкой публике. Они будут вынуждены испытать мою полную бездарность :)   -  person Chad Schouggins    schedule 21.05.2018
comment
Пусть рвется! Канал Хендрикс - или, я полагаю, Слэш, если вы человек Гибсона. И я уверен, что вы настоящий талант. Но я бросил играть не зря :-).   -  person Stein Åsmul    schedule 21.05.2018
comment
Это позор, у вас должен быть какой-то способ избавиться от гнева, вызванного MSI, в конце дня.   -  person Chad Schouggins    schedule 21.05.2018
comment
MSI явно необычна с множеством движущихся частей и неожиданной сложностью. У него есть основные корпоративные преимущества, но также есть множество проблем (внизу) и распространенных проблем.   -  person Stein Åsmul    schedule 21.05.2018
comment
Добавлена ​​еще одна запись, в которой я не уверен на 100%. Запись CommandLine, которая записывается в файл журнала.   -  person Stein Åsmul    schedule 22.05.2018


Ответы (2)


Да, похоже, вам нужно создать преобразование ответа (MST). Многие инструменты, упомянутые выше, являются инструментами премиум-класса (не стоит платить за преобразование ответа !!), но я использовал его некоторое время назад (этот инструмент бесплатный), и, похоже, он работал хорошо:

http://www.jontylovell.net/index.php?page=10

После того, как вы создадите преобразование ответа с помощью конфигурации установки, вам необходимо указать преобразование в командной строке с помощью:

MSIEXEC /I {Path To MSI} TRANSFORMS={Path the response MST} /qn
person Captain_Planet    schedule 22.05.2018

UPDATE, Aug 2018: объединение раздела заголовка с выдержками из полного «ответа» ниже - попытка выделить части, которые кажутся имеющими смысл.

CommandLine файла журнала: просто подумал о другом варианте. Если вы зарегистрируете свою установку MSI, вы можете найти в полученном файле журнала запись CommandLine и посмотреть, с какой командной строкой работает установка (ссылка на связанный ответ для упрощения поиска). Зарегистрируйте установку: msiexec.exe /i C:\Path\Your.msi /L*v C:\Your.log (подробные сведения о журнале < / а>). В файле журнала также должны быть перечислены все значения свойств, установленные при установке во время установки, но это находится в другом месте журнала (запись CommandLine показывает только указанную командную строку). Нет гарантий, что эта командная строка всегда верна, но дать ей шанс?

Инструменты создания преобразований. Некоторые коммерческие инструменты предоставляют небольшие компоненты, которые позволяют захватывать настройки графического интерфейса пользователя MSI во время «пробных прогонов» - которые, по-видимому, являются основой того, что вы спросите (я стараюсь давать общие и полезные ответы для других - извините, если это что-то смущает). Подробнее см. В этом ответе: Инструмент создания ответов Mst . Я не думаю, что они подлежат повторному распространению, поэтому вы не можете доставить их своему покупателю. Вы могли бы спросить поставщиков, разрешают ли они перераспределение? Если да - дайте нам знать? К сожалению, у меня нет образца кода, который позволил бы вам использовать собственный инструмент. Что-то может быть на гитхабе. Не ракетостроение, но все требует времени.


Настройка автоматической установки

Кажется, вы просто хотите воспроизвести одну и ту же установку на многих компьютерах? (крупномасштабное корпоративное развертывание, выполненное профессионалами). Или вы хотите предоставить своим пользователям универсальный инструмент или подход для настройки вашей установки? (настройка настройки в целом для любого конечного пользователя). Я напишу общий обзор, надеясь ответить на оба вопроса. Специалисты по развертыванию обычно знают, что делать, им нужно знать, что нельзя делать - что необычного в вашей настройке - если вообще что-нибудь делать.

Вы можете настроить установку MSI несколькими способами, но наиболее распространенными способами являются использование пакетных файлов / параметров командной строки или файлов преобразования, часто комбинируя и то, и другое. Следующий ответ описывает эти два подхода более подробно: Как лучше использовать файлы MSI. Теоретически вы также можете вызвать установку программно - например, используя MSI API (COM-автоматизация), что делается редко. MSI API и Win32, COM и DTF / .NET < / а>.


Подходы

Основываясь на двух вышеупомянутых основных подходах или механизмах, я полагаю, мы можем перечислить несколько реальных вариантов настройки настройки конечными пользователями - как профи развертывания, так и нет.

Некоторые из нижеперечисленных подходов можно успешно комбинировать - так что у вас есть пакетный файл по умолчанию, настроенный для установки файла преобразования по умолчанию, и у вас есть документ PDF, объясняющий обычные параметры установки и дополнительные параметры - и вещи, которые не должны быть сделано. Файл преобразования по умолчанию настраивается конечным пользователем (лицензионный ключ, строки подключения, URL-адреса, расположение ярлыков, какие функции устанавливать, а какие нет и т. Д.)

Стандартное преобразование: я полагаю, вы могли бы предоставить стандартный файл преобразования *.mst, который содержит настройки по умолчанию? Но почему бы не сделать эти настройки сразу при установке? Возможно, вам нужны разные настройки для разных регионов? Вы можете предоставить несколько стандартных преобразований для разных целей.

Пакетные файлы: вы можете создать группу пакетных файлов с разными настройками "по умолчанию" и позволить пользователю использовать тот, который им нужен? Со встроенной информацией о том, что установить, например, лицензионными ключами и т. Д. Вы можете использовать пакетный файл, который устанавливает только значения свойств PUBLIC, или вы можете использовать пакетный файл вместе со стандартным преобразованием, упомянутым выше. Преобразования - это тяжелые настройки, свойства - простые настройки.

Административная установка: я никогда не видел, чтобы это выполнялось, но я полагаю, что у вас может быть пользовательское действие в последовательности административной установки, которое генерирует пакетный файл с заданными вами параметрами, или даже сгенерировать файл преобразования с такими же настройками? Однако административная установка не отображает ваш обычный графический интерфейс MSI - так что это требует двойных усилий, поскольку вам нужно создать «графический интерфейс генератора настроек» для последовательности графического интерфейса административной установки (есть отдельные последовательности графического интерфейса для обычной установки, установка администратора и рекламируемая установка). также упоминая свойство AdminProperties concept - я откровенно не понимаю, как это работает. Никогда не пользовался.

Одностраничный PDF-файл. Я предпочитаю предоставить одностраничный PDF-документ под названием Large Scale Deployment Guide.pdf (или «Автоматическое развертывание» или аналогичный). Он описывает с максимальной минималистичностью различные доступные варианты установки и их значение. А чего не делать. Показаны несколько примеров командных строк. Профи поймут, что делать за секунды. Перечислите полные требования к среде выполнения! (предварительные требования, время выполнения). Объясните чего не делать... не отключайте эти настраиваемые действия, и вот почему ...»).


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

person Stein Åsmul    schedule 21.05.2018