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 для установки базы данных SQL
Как добавить пользовательский интерфейс в установщик WiX 3?
ОБНОВИТЬ:
После изучения источника пользовательского интерфейса WiX, FeatureDlg отображает элемент управления "SelectionTree". Похоже, что элемент управления (наряду с другими элементами управления, отображаемыми пользовательским интерфейсом WiX) являются элементами управления установщика Windows, а не элементами управления, специфичными для WiX. Смотрите SelectionTree. Похоже, что просто отключить эти параметры просто невозможно.