Как я могу разрешить выбор функций MSI в загрузчике записи WiX?

Я только начал экспериментировать с Burn, чтобы попытаться связать несколько файлов MSI. Я использую WiX v3.6.2705.0.

Цепочка работает, но теперь я пытаюсь заставить работать дополнительные функции. Я надеялся, что это будет просто случай установки EnableFeatureSelection на «да» для моих тегов MsiPackage, но не имеет никакого значения, включен он или выключен.

Что еще нужно сделать, чтобы дополнительные функции заработали, или это известная проблема?

Спасибо, Алан


person Alan Spark    schedule 12.03.2012    source источник


Ответы (2)


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

  1. Создайте настраиваемое приложение загрузчика с помощью Burn для сбора информации от пользователя, а затем передайте эту информацию в msi при его запуске. Пользовательский пользовательский интерфейс загрузчика WiX Burn? wix-burn-3-6-beta-custom-ui-examples

  2. Если вы создали пользовательский интерфейс в своем MSI и хотите, чтобы Burn отображал этот пользовательский интерфейс в дополнение к Burn UI, тогда в своем MsiPackage установите DisplayInternalUI = "yes".

person BryanJ    schedule 13.03.2012
comment
Спасибо за это, Брайан. Мне нужно изучить исходный код самого установщика WiX, как вы предлагаете. Интересно выглядит флаг DisplayInternalUI. - person Alan Spark; 13.03.2012
comment
Что, если установка MSI Y зависит от выбора функции в пользовательском интерфейсе MSI X, которая отображается через DisplayInternalUI = yes? Как получить эту информацию из MSI X для условной установки MSI Y? - person Kevin Wong; 18.09.2012
comment
Я не думаю, что ты сможешь @KevinWong. Я не думаю, что вы сможете передать эту информацию из установщика обратно в загрузчик во время установки. Я предпочитаю иметь единый пользовательский интерфейс загрузчика, а затем собирать всю необходимую информацию от пользователя перед установкой. - person BryanJ; 18.09.2012
comment
Между прочим, похоже, что вы не можете просто перенести свой код пользовательского интерфейса MSI в ускоритель записи, поскольку он использует другой стек пользовательского интерфейса (stackoverflow.com/questions/12482395/migrate-wix-ui-to-burn/) - person Kevin Wong; 19.09.2012

Вы можете использовать элемент MsiProperty для заполнения ADDLOCAL с функциями, которые вы хотите установить с помощью дефолт.

ПРИМЕЧАНИЕ: MsiProperty ADDLOCAL - удалено в Wix 4, предупреждение и игнорируется в Wix 3.11.

person Ciprian    schedule 13.03.2012
comment
Спасибо. На самом деле я хотел позволить пользователю выбирать, какие функции использовать, а не по умолчанию. Вы знаете, возможно ли это? - person Alan Spark; 13.03.2012
comment
Алан прав, но поскольку я действительно искал именно этот аспект, я хотел бы поблагодарить @ciprian за этот ответ! :-) - person CodeFox; 28.07.2014