CPackWIX
CPack WiX генератор, специфичные опции
Переменные, специфичные для генератора CPack WiX
Следующие переменные специфичны для установщиков, созданных на Windows с использованием WiX.
-
CPACK_WIX_UPGRADE_GUID -
GUID обновления (
Product/@UpgradeCode)Будет автоматически сгенерирован, если не указан явно.
Он должен быть явно задан как постоянно сгенерированный глобально уникальный идентификатор (GUID), чтобы ваши установщики могли заменять существующие установки, использующие тот же GUID.
Например, вы можете явно задать эту переменную в файле CMakeLists.txt со значением, сгенерированным по умолчанию. Не следует использовать GUID, которые вы не сгенерировали сами или которые могут принадлежать другим проектам.
GUID должен иметь следующий фиксированный синтаксис:
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
(каждая X представляет собой верхний регистр шестнадцатеричной цифры)
-
CPACK_WIX_PRODUCT_GUID -
GUID продукта (
Product/@Id)Будет автоматически сгенерирован, если не указан явно.
Если указан явно, это установит идентификатор продукта вашего установщика.
Установка прервётся, если будет обнаружена существующая установка, использующая тот же GUID.
GUID должен использовать синтаксис, описанный для CPACK_WIX_UPGRADE_GUID.
-
CPACK_WIX_LICENSE_RTF -
Файл лицензии в формате RTF
Если CPACK_RESOURCE_FILE_LICENSE имеет расширение .rtf, он используется как есть.
Если CPACK_RESOURCE_FILE_LICENSE имеет расширение .txt, он неявно преобразуется в RTF генератором WiX. Ожидается кодировка файла .txt — UTF-8.
С помощью CPACK_WIX_LICENSE_RTF вы можете переопределить файл лицензии, используемый генератором WiX, в случае, если CPACK_RESOURCE_FILE_LICENSE имеет неподдерживаемый формат или преобразование .txt -> .rtf не работает как ожидалось.
-
CPACK_WIX_PRODUCT_ICON -
Иконка, отображаемая рядом с именем программы в окне «Установка и удаление программ».
Если задано, эта иконка используется вместо иконки по умолчанию.
-
CPACK_WIX_UI_REF -
Эта переменная позволяет переопределить Id элемента
<UIRef>в шаблоне WiX.Значение по умолчанию —
WixUI_InstallDirв случае, если не определены компоненты CPack, иWixUI_FeatureTreeв противном случае.
-
CPACK_WIX_UI_BANNER -
Растровый битмап, который будет отображаться в верхней части всех страниц установщика, кроме приветствия и завершения.
Если задано, это изображение заменит изображение баннера по умолчанию.
Это изображение должно быть 493 на 58 пикселей.
-
CPACK_WIX_UI_DIALOG -
Растровый битмап фона, используемый на диалогах приветствия и завершения.
Если эта переменная установлена, установщик заменит изображение диалога по умолчанию.
Это изображение должно быть 493 на 312 пикселей.
-
CPACK_WIX_PROGRAM_MENU_FOLDER -
Имя папки в меню «Пуск» для запуска.
Если эта переменная не установлена, она будет инициализирована значением CPACK_PACKAGE_NAME.
-
CPACK_WIX_CULTURES -
Язык(и) установщика
Языки компилируются в библиотеку расширений WiXUI. Для их использования просто укажите имя культуры. Если вы укажете более одного идентификатора культуры в списке, разделённом запятыми или точками с запятой, будет использоваться первый найденный. Список поддерживаемых языков можно найти по адресу: http://wix.sourceforge.net/manual-wix3/WixUI_localization.htm
-
CPACK_WIX_TEMPLATE -
Шаблон для генерации WiX
Если эта переменная установлена, указанный шаблон будет использован для генерации файла WiX wxs. Это следует использовать, если требуется дальнейшая настройка вывода.
Если эта переменная не установлена, будет использован шаблон MSI по умолчанию, включённый в CMake.
-
CPACK_WIX_PATCH_FILE -
Необязательный список XML-файлов с фрагментами, которые необходимо вставить в сгенерированные исходные файлы WiX
Эта необязательная переменная может быть использована для указания XML-файла, который генератор WiX будет использовать для вставки фрагментов в сгенерированные исходные файлы.
Файлы патчей, понимаемые генератором CPack WiX, примерно соответствуют этому компактному схеме RELAX NG:
start = CPackWiXPatch CPackWiXPatch = element CPackWiXPatch { CPackWiXFragment* } CPackWiXFragment = element CPackWiXFragment { attribute Id { string }, fragmentContent* } fragmentContent = element * - CPackWiXFragment { (attribute * { text } | text | fragmentContent)* }В настоящее время фрагменты могут быть вставлены в большинство элементов Component, File и Directory.
Следующие дополнительные специальные Id могут быть использованы:
-
#PRODUCTдля элемента<Product>. -
#PRODUCTFEATUREдля корневого элемента<Feature>.
Следующий пример иллюстрирует, как это работает.
Предположим, что генератор WiX создаёт следующий XML-элемент:
<Component Id="CM_CP_applications.bin.my_libapp.exe" Guid="*"/>
Следующий XML-файл патча может быть использован для вставки элемента Environment:
<CPackWiXPatch> <CPackWiXFragment Id="CM_CP_applications.bin.my_libapp.exe"> <Environment Id="MyEnvironment" Action="set" Name="MyVariableName" Value="MyVariableValue"/> </CPackWiXFragment> </CPackWiXPatch> -
-
CPACK_WIX_EXTRA_SOURCES -
Дополнительные исходные файлы WiX
Эта переменная предоставляет необязательный список дополнительных исходных файлов WiX (.wxs), которые должны быть скомпилированы и связаны. Требуется полный путь к исходным файлам.
-
CPACK_WIX_EXTRA_OBJECTS -
Дополнительные объектные файлы WiX или библиотеки
Эта переменная предоставляет необязательный список дополнительных объектных файлов WiX (.wixobj) и/или библиотек WiX (.wixlib). Требуется полный путь к объектам и библиотекам.
-
CPACK_WIX_EXTENSIONS -
Эта переменная предоставляет список дополнительных расширений для инструментов WiX light и candle.
-
CPACK_WIX_<TOOL>_EXTENSIONS -
Это инструмент-специфичная версия CPACK_WIX_EXTENSIONS.
<TOOL>может быть либо LIGHT, либо CANDLE.
-
CPACK_WIX_<TOOL>_EXTRA_FLAGS -
Эта переменная-список позволяет передавать дополнительные флаги инструменту WiX
<TOOL>.Используйте с осторожностью. Будущие версии CPack могут генерировать флаги, которые могут конфликтовать с вашими собственными.
<TOOL>может быть либо LIGHT, либо CANDLE.
-
CPACK_WIX_CMAKE_PACKAGE_REGISTRY -
Если эта переменная установлена, сгенерированный установщик создаст запись в ключе реестра Windows
HKEY_LOCAL_MACHINE\Software\Kitware\CMake\Packages\<package>. Значение для<package>предоставляется этой переменной.Предполагая, что вы также установили файл конфигурации CMake, это позволит другим проектам CMake найти ваш пакет с помощью команды
find_package().
-
CPACK_WIX_PROPERTY_<PROPERTY> -
Эта переменная может быть использована для предоставления значения для свойства установщика Windows
<PROPERTY>Следующий список содержит некоторые примеры свойств, которые могут быть использованы для настройки информации в разделе «Программы и компоненты» (также известном как «Установка и удаление программ»)
- ARPCOMMENTS — Комментарии
- ARPHELPLINK — URL справки и поддержки
- ARPURLINFOABOUT — URL общей информации
- URLUPDATEINFO — URL информации об обновлении
- ARPHELPTELEPHONE — Номер телефона справки и поддержки
- ARPSIZE — Размер (в килобайтах) приложения
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.5/module/CPackWIX.html