Lessmsi - отличный инструмент, который, безусловно, работает здесь, если вы хотите открыть его графический интерфейс и провести ручное исследование. Тем не менее, я скажу, что следующая команда не может достоверно представить все свойства:
lessmsi l -t Property <msi_name>
Один из способов (лучше) гарантировать, что вы получите все возможные свойства, - это выполнить установку, восстановить или удалить файл MSI и зарегистрировать процесс. Следующая команда записывает только свойства и ничего больше:
<msi_name> /lp! <msi_property_logfile>
Вышеуказанная команда эквивалентна:
msiexec /lp! <msi_property_logfile> /i <msi_name>
Мой предпочтительный метод, однако, заключается в том, чтобы на самом деле не устанавливать / удалять / восстанавливать (а просто извлекать вместо этого). Преимущества этого метода по сравнению с lessmsi состоят в том, что для него не требуется сторонняя утилита (например, lessmsi ) и не требуется возиться с какими-либо установками. Учитывая, что у вас достаточно дискового пространства для фактической установки программы, вы можете сделать:
msiexec /a <msi_name> /lp! <msi_property_logfile> TARGETDIR=<absolute_path_to_extract_to>
Обратите внимание, что <absolute_path_to_extract_to>
может указывать на несуществующий каталог (команда создаст необходимые каталоги или потерпит неудачу).
Если по какой-либо причине вы ненавидите пользовательский интерфейс установки, вы можете добавить /qr
опцию, которая «уменьшит» и, возможно, исключит пользовательский интерфейс без ущерба для процесса регистрации свойств. Однако, будьте осторожны - если вы пойдете «ниже», чем сокращенный пользовательский интерфейс (то есть. /qb
| /passive
Или /qn
| /quiet
), <msi_property_logfile>
возможно , вам не хватает некоторых свойств.
Property
таблицу. Был ли у вас какой-то конкретный рабочий процесс или сценарий использования за пределами MSI?