Wix как скрыть опции

Я использую Wix 3.5 для сборки установщика MSI. Я хочу знать, есть ли какой-нибудь способ скрыть некоторые параметры из "Диалога пользовательской настройки компонентов" (в котором вы выбираете, что устанавливать в дереве компонентов).

Я хочу, чтобы были только опции "Будет установлено на локальном жестком диске" и "Вся функция будет недоступна"

В настоящее время, кроме этих двух вариантов, у меня есть эти варианты:

  • "Вся функция будет установлена ​​на локальный жесткий диск"
  • "Будет установлен для запуска из сети"
  • "Будет установлена ​​вся функция для запуска из сети"

3 ответа

Решение

Диалог выбора функции использует элемент управления SelectionTree, встроенный элемент управления установщика Windows.

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

Элемент Feature в WiX имеет четыре свойства, которые определяют способ установки компонента:

  • Отсутствует: разрешить / запретить
  • Разрешить Реклама: нет / система / да
  • InstallDefault: followParent / local / source
  • TypicalDefault: реклама / установка

Таблица компонентов также контролирует, может ли компонент запускаться из источника или нет. Элемент Компонент имеет Location имущество:

  • местный
    Запрещает запуск компонента из источника или из сети (это поведение по умолчанию, если этот атрибут не задан).
  • источник
    Обеспечивает, что компонент может быть запущен только из источника (он не может быть запущен с компьютера пользователя).
  • или
    Позволяет компоненту запускаться из источника или локально.

Таким образом, чтобы удалить опцию для запуска из сети, установите Location свойство ваших компонентов для local,

Вы не можете удалить всю функцию будет установлена ​​на локальный жесткий диск из опций. Он отображается только при наличии подфункций и позволяет устанавливать подфункции, а также саму функцию, в отличие от Будет установлен на локальный жесткий диск, который устанавливает только выбранные функции и не влияет на подфункции.

Если подфункции всегда устанавливаются вместе с родителем, вы можете попробовать установить InstallDefault атрибут подфункций followParent,

Чтобы удалить "Эта функция будет установлена ​​при необходимости", установите в своей функции AllowAdvertise = "no" https://www.firegiant.com/wix/tutorial/user-interface/custom-settings/

Если вы используете WiX UIExtension, вам необходимо загрузить исходный код WiX для этого расширения и соответствующим образом изменить его. Следующие ссылки должны помочь вам начать:

Настройки интерфейса WiX

Пользовательский интерфейс Wix для установки базы данных SQL

Как добавить пользовательский интерфейс в установщик WiX 3?

ОБНОВИТЬ:

После изучения источника пользовательского интерфейса WiX, FeatureDlg отображает элемент управления "SelectionTree". Похоже, что элемент управления (наряду с другими элементами управления, отображаемыми пользовательским интерфейсом WiX) являются элементами управления установщика Windows, а не элементами управления, специфичными для WiX. Смотрите SelectionTree. Похоже, что просто отключить эти параметры просто невозможно.

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