XML - статьи

         

Как работает WiX


В среду создания дистрибутивов входит четыре компонента. Это, во-первых, сама схема XML/WiX, вокруг которой построены основные утилиты. Компилятор candle компилирует исходные файлы в объектные. Линкер light связывает файлы в один MSI- или MSM-файл. Декомпайлер — dark — напротив, строит WiX-файлы на основании существующих MSI- или MSM-файлов.

В основе всего процесса генерации лежит обычно один XML-файл особого формата, в терминах XML называемого схемой. Обычно файлы WiX имеют расширение *.wxs. Самый простой и тривиальный файл содержит всего один тэг — ссылку на прототип WiX-документа и имеет вид:

Вы можете создать этот файл и откомпилировать его с помощью компилятора candle, чтобы убедиться в работоспособности данного файла. Если ваш файл называется, к примеру, 1.wxs, то командная строка будет выглядеть как candle 1.wxs. Если не обнаруживаются ошибки, то процесс компиляции не будет сопровождаться каким-либо сообщениями, кроме заголовка компилируемого файла (да и его можно подавить, задав ключ -nologo).

В результате вы получите файл с тем же именем, что и ваш WXS, но только с расширением wixobj. Этот файл содержит всю информацию о составе дистрибутива, но не сами файлы — таким образом вы можете компилировать wix-файлы реже, чем выполнять сборку, поскольку компиляция нужна, только если вы изменяете состав инсталляции. Обновление самих файлов не требует повторного применения candle.
Говоря попросту, объектный файл тоже является XML-файлом, в котором компилятор добавляет дополнительную информацию о включаемых объектах. В числе прочего, ссылка на оригинальный файл позволяет отслеживать проблемы и их источник. Чтобы убедиться в этом, откройте результирующий wixobj в любом редакторе:



Содержание раздела