Эта секция не является обязательной. Она определяет все компоненты, которые программа установки покажет на странице "Выбор компонентов" для настройки типа установки.
Сама по себе эта секция ничего не делает: она должна быть "связана" с другими записями инсталляции. Смотрите раздел справки "Параметры секций [Components] и [Tasks]".
Пример секции [Components]:
[Components] Name: "main"; Description: "Main Files"; Types: full compact custom; Flags: fixed Name: "help"; Description: "Help Files"; Types: full Name: "help\english"; Description: "English"; Types: full Name: "help\dutch"; Description: "Dutch"; Types: full
В приведенном выше примере создаётся четыре компонента: компонент "main" будет установлен, если пользователь выберет тип установки "full" или "compact". Компонент "help", имеющий два дочерних компонента, будет установлен только в том случае, если пользователь выберет тип установки "full".
Ниже приведен список поддерживаемых параметров:
Внутреннее имя компонента.
Общее количество символов \ или / в имени компонента определяет его уровень. Любой компонент с уровнем 1 или выше является дочерним компонентом. Компонент, находящийся в списке перед дочерним компонентом с уровнем на 1 меньше, чем дочерний, является родительским. Другие компоненты, имеющие один и тот же родительский компонент, что и дочерние, являются компонентами одного уровня.
Дочерний компонент не может быть выбран, если не выбран его родительский компонент. Родительский компонент не может быть выбран: если не выбран ни один из его дочерних компонентов; если параметр секции [Components] не имеет прямой связи с родительским компонентом; если родительский компонент не содержит флаг checkablealone.
Если компоненты одного уровня содержат флаг exclusive, то выбран может быть только один из них.
Name: "help"
Описание компонента (может содержать константы). Это описание показывается конечному пользователю во время установки.
Description: "Help Files"
Перечень типов, разделённых пробелами, которые поддерживают данный компонент. Если конечный пользователь выберет один из перечисленных типов, компонент будет установлен.
Если флаг fixed (см. ниже) не используется, то любые выборочные типы (с флагом iscustom) в этом списке игнорируются программой установки.
Types: full compact
Дополнительное место на диске, необходимое этому компоненту. Параметр аналогичен директиве ExtraDiskSpaceRequired в секции [Setup].
ExtraDiskSpaceRequired: 0
Этот параметр представляет собой набор дополнительных опций. Допускается использовать несколько опций, разделяя их пробелами. Поддерживаются следующие опции:
Указывает, что компонент может быть выбран, если ни один из его дочерних компонентов не выбран. По умолчанию, если ни один параметр секции [Components] не имеет прямой ссылки на компонент, тогда отмена выбора у всех дочерних компонентов приведёт к отмене выбора родительского компонента.
Указывает, что компонент не должен быть выбран автоматически, если выбирается родительский компонент. Не влияет на компоненты верхнего уровня и не может быть объединён с флагом exclusive.
Указывает программе установки, что данный компонент является взаимоисключающим среди компонентов одного уровня, также имеющих флаг exclusive.
Указывает программе установки, что данный компонент не может быть выбран или не выбран конечным пользователем во время инсталляции.
Указывает программе установки о необходимости перезапуска системы после установки данного компонента, даже если в этом нет необходимости (например, из-за записей с флагом restartreplace в секции [Files]). Действует также, как и директива AlwaysRestart, но только для компонента.
Указывает программе установки не предупреждать пользователя о том, что данный компонент не будет удалён после того, как с него будет снят выбор, если он уже был установлен на этом ПК.
В зависимости от сложности конфигурации компонентов, можно попробовать использовать секцию [InstallDelete] и этот флаг для автоматической "деинсталляции" компонентов, выбор которых был отменён.
Flags: fixed