Как сделать так, чтобы функции в MSI Feature Table автоматически выбирались при выборе их родителей

В моем конкретном примере я смотрю на ночные сборки FarManager 3. Однако то же самое относится и к FarManager 2.0.

По умолчанию при установке FarManager функция Addons не выбрана. Вы можете выбрать функции из неинтерактивной командной строки, установив следующую команду:

msiexec /i "farSetup.msi" /passive ADDLOCAL=Addons,Colors,Macros,SetUp,Shell,XLat'

Я думаю, что это должно быть возможно сделать только с ADDLOCAL=Addons из-за Таблицы возможностей. Если вы откроете таблицу возможностей в Orca, вы увидите следующие дочерние функции дополнений.

Дополнения из таблицы функций MSI

Есть ли способ изменить таблицу функций так, чтобы ADDLOCAL=Addons Подразумевает такие функции, как Colours, Macros, SetUp, Shell и XLat?

2 ответа

Решение

Вы пытались указать атрибуты, которые включают msidbFeatureAttributesFollowParent (значение 2) а также msidbFeatureAttributesUIDisallowAbsent (значение 16), что приведет вас к 26? Согласно документации по таблице объектов, это должно связывать состояния элементов вместе. Конечно, если вы хотите, чтобы дочерние функции оставались невыбранными, это невозможно.

Строго говоря, нет.

Однако у вас может быть свойство типа INSTALLADDONS=1, а затем использовать это свойство в Условиях объектов. У вас также может быть настраиваемое действие, которое добавляет имена других компонентов в свойство ADDLOCAL, когда свойство содержит дополнения.

Другие вопросы по тегам