В состав XPDK входит скрипт для инсталляции программы, который обладает следующими возможностями:
проверка наличия уже установленных версий
установка "с нуля"
обновление более старых версий (в том числе с внесением изменений в структуру БД)
проверка наличия и размера всех необходимых файлов
создание БД в соответствии с заданной структурой
настройка параметров подключения к СУБД
создание администраторского логина в БД
создание конфигурационных файлов с настройками по умолчанию в случае, если установка производится "с нуля" или такие файлы отсутствовали в предыдущей версии.
Файл установки называется install.php. Для его работы необходимо создать файл install.inc, в котором описаны данные для установки. Этот файл имеет следующий формат:
<?
// Файл с информацией для установки программы на основе XPDK
$inst_projtitle="Тестовая программа на XPDK"; // название программы
$inst_projdescr="Описание тестовой программы"; // краткое описание программы (эта строка выводится под названием)
$inst_configfile="test"; // имя конфигурационного файла (расширение указывать не требуется, оно всегда .php
$inst_listfiles="test.dat"; // имя файла со списком файлов программы и их размерами (для проверки корректности закачки). Если такого файла не существует, проверка пропускается
$inst_writable=array("config"); // массив каталогов и файлов, которые должны быть доступны на запись
$inst_versionvar="opt_testver"; // название переменной в файле конфигурации, в которой хранится версия программы
$inst_deffile=array("config/tmplate1.php","config/tmplate2.php"); // списки конфигурационных файлов, которые требуется скопировать из файлов по умолчанию (имя_файла.с_расширением.def) в случае если они отсутствуют
$inst_configprefix="opt_"; // префикс, с которого начинаются все переменные, хранящиеся в конфигурационном файле
?>
Кроме этого, в подкаталоге db для установки "с нуля" должны находиться файлы mysql.sql и mysql2.sql (в случае СУБД MySQL), в первом из которых содержатся тексты запросов, создающих и заполняющих таблицы, необходимые для работы самого XPDK (он имеется в дистрибутиве), а во втором - SQL-запросы, формирующие и заполняющие БД для работы программы (создается разработчиком программы).
Также в каталоге config должны находиться файлы tmplate1.php.def и tmplate2.php.def, которые определяют шаблоны по умолчанию.