Что нового в Ghost Installer ============================ Знаком "-" отмечены исправленные ошибки, "+" - новые возможности, "*" - изменения. Версия 1.62 (от 20.12.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - При сборке дистрибутива не производилась проверка свободного места на диске. + В gin-файле добавлен параметр CompressionLevel, определяющий степень сжатия. Изменяется от 1 (мин. сжатие) до 7 (макс. сжатие), по-умолчанию равен 7. * При инсталляции файлов с одинаковыми версиями сравниваются также их даты. - При большом количестве файлов (приблизительно больше 1500) при запуске собранного в версиях 1.6 и 1.61 дистрибутива возникала ошибка "Can't extract presetup files!". * Проверка контрольной суммы удалена, т.к. при большом размере дистрибутива это занимало довольно длительное время. Вместо этого при запуске проверяется размер файла дистрибутива. - При большом количестве файлов очень долго производилась проверка свободного места на диске. Версия 1.61 (от 17.11.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - В некоторых ситуациях файлы без атрибутов не помещались в дистрибутив. - Окна сообщений центрировались относительно всего экрана, а не относительно его рабочей области. - Исправлены ошибки в функции отрисовки фонового окна. + Новая переменная - Office97Templates. Версия 1.6 (от 20.10.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~ * Полностью переработан механизм сжатия/распаковки. Теперь движок инсталлятора не зависит от используемой системы сжатия, т.е. в дальнейшем ее легко заменить. На данный момент в инсталляторе используется формат архива Microsoft CAB с системой сжатия LZX (коэффициент сжатия в среднем намного лучше, чем в ZIP, и чуть лучше, чем в RAR). * Система шифрования теперь также не зависит от системы сжатия. Для шифрования выбран криптостандарт ГОСТ 28147-89 с длиной ключа 256 бит. + Добавлена возможность регистрации out-of-process COM-серверов. - При запуске внешней программы основное окно инсталлятора можно было закрыть или переместить. * Заставка теперь появляется до проверки целостности дистрибутива. * В диалогах DLG_LICENSE и DLG_README теперь используются RichEdit-ы (т.е. вы можете использовать текст в формате RTF). + Добавлена возможность задать цвет фона текста в диалогах DLG_LICENSE и DLG_README (параметры LicenseBackColor и ReadmeBackColor в секции Display файла gins.ini). + В gins.ini в секции Config добавлен параметр UninstallKey, определяющий название раздела реестра, в который будет помещена информация об удалении приложения. - Если переменная InstallPath была не задана (и не использовалась в сценарии установки), инсталлятор сообщал о нехватке дискового пространства. + Добавлена возможность указания минимальной версии Windows, необходимой для работы приложения (параметр MinOSVersion в секции Config файла gins.ini). + Добавлена возможность при создании ярлыка задать режим отображения окна (нормальное, развернутое или свернутое) и комментарий. - При повторном создании ярлыка, но с другой иконкой, не обновлялся кэш, и Windows показывала старую иконку. - Если деинсталляция приложения запускалась из открытой папки программной группы, то сама группа не удалялась. - Если в InstallPath встречался каталог, в названии которого было более отдой точки (например "My.Program.1.0"), то при установке в Windows 9x инсталлятор сообщал о нехватке дискового пространства. * В секции AddReg появился новый параметр - тип добавляемого в реестр параметра. ВНИМАНИЕ! То, что переменная начинается с символа "#", теперь не означает, что она числового типа. - В секции RegVariables не читались из реестра числовые (REG_DWORD) параметры. + Добавлена возможность записи (AddReg) в реестр и чтения (RegVariables) из реестра двоичных (REG_BINARY) параметров. + Добавлена возможность проверить, не запущено ли инсталлируемое приложение (параметры CheckWindow и CheckMutex в gins.ini). * Вследствие последних изменений более не используются следующие параметры (их можно спокойно удалить): а) секция VersionInfo в gins.ini; б) файл build.ini; в) параметры UpdateVersionInfo, Compression, RarLock в gin-файле. * Небольшие изменения в дизайне диалогов. ВНИМАНИЕ! Изменился размер gins.bmp - теперь он 480x64. Тем, кто использовал свою картинку, придется ее немного переделать. - При использовании не-RAR сжатия файл с флагом NO_LOG не распаковывался, если каталог назначения не существовал. + В gins.ini добавлен параметр RemoveOldReferences. Он позволяет автоматически удалить ссылки на предыдущую версию, если установка новой производится в тот же каталог. - В случае отсутствия на целевом компьютере Internet Information Server переменные IIS-WWWRoot и IIS-Scripts были пустыми. Теперь они принимают значения "%BootDrive%\wwwroot" и "%BootDrive%\wwwroot\scripts" соответственно. + Добавлена переменная MainTitle, с помошью которой можно присваивать основному заголовку любое значение, а не только ProgramName, как было раньше. + Если при указании каталога установки (в диалоге DLG_DIR) инсталлятор обнаруживает, что такой каталог уже существует, он спрашивает подтверждение у пользователя. + Добавлена возможность удаления файлов при установке приложения (секция DelFiles в файле сценария установки). + При задании цвета теперь можно использовать системные цвета Windows. Версия 1.52 (от 17.07.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Проверка целостности дистрибутива не производится, если дистрибутив находится на CD-ROMе или сетевом диске и при этом его размер больше 1 Мб. + В gin-файле в секции Config добавлен параметр RarLock. + В файле конфигурации gins.ini добавлен параметр AutoSelectLanguage. Версия 1.51 (от 10.07.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Флаг инсталляции REGISTER_SERVER может регистрировать библиотеки типов (type libraries). + В lng-файле в секции Strings добавлен параметр LanguageName. - При деинсталляции шрифта в Windows 9x шрифт не удалялся из списка (но сам файл удалялся). - Если название диалога в PreInstallDialogSequence или в PostInstallDialogSequence было записано неверно, инсталлер зависал на этапе показа этого диалога. Версия 1.5 (от 13.06.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~ + Новые переменные: ApplicationData, QuickLaunch, IIS-WWWRoot, IIS-Scripts, Office97, Office2000. + Добавлена возможность подавить вывод заголовков в диалогах (параметр ShowDialogTitle). - Если нажать на кнопку закрытия окна, а затем на вопрос о прерывании установки ответить "Нет", то диалог с вопросом появлялся снова. - Если в gin-файле в значении параметра ExeName встречалась точка, то Build отрезал все символы после точки. * Фоновое окно инсталлятора теперь заполняет не весь экран, а только его рабочую область (working area). * При RAR-сжатии теперь используется GUI-версия RAR'а (WinRAR.exe), а не консольная. * ВНИМАНИЕ! Параметр DefaultInstallPath удалён. Теперь для того, чтобы задать путь установки по умолчанию, вы должны определить переменную InstallPath. + Добавлена возможность чтения значений переменных из реестра и ini-файлов (секции RegVariables и IniVariables). + Добавлена возможность показа картинки на этапе распаковки служебных файлов. - При копировании внешних файлов после показа диалога о конфликте версий инсталлятор падал. - Диалог о конфликте версий не центрировался. + При запуске дистрибутива сначала производится проверка его целостности. + Теперь не обязательно вручную формировать структуру дистрибутива - можно указать Build'у, откуда брать файлы (секция FileLinks в gin-файле). * Значительно ускорена распаковка файлов при использовании RAR-сжатия. + Добавлена возможность использовать переменные окружения. - Размер UnGins.exe не учитывался при подсчёте требующегося свободного места. + В gins.ini добавлен параметр ExtraDiskSpace, определяющий, сколько ещё свободного места требуется вдобавок к необходимому для инсталляции приложения. Версия 1.41 (от 17.05.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Некорректно обрабатывались кавычки в секции PreRunApp. * Все текстовые файлы инсталлятора заменены на один hlp-файл. - В случае отсутствия указанного gin-файла Build ругался на то, что невозможно найти каталог Presetup. + В build.ini добавлен параметр DefaultCompression. + При удалении hlp-файла теперь автоматически удаляются соответствующие gid- и fts-файлы. * Названия переменных теперь могут быть в любом регистре. Исправление 2 к версии 1.4 (от 5.05.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Теперь в диалоге DLG_LANGUAGE показываются только те языки, поддержка которых присутствует в операционной системе. - Не работала настройка сценария установки в зависимости от версии Windows (не подгружались файлы сценария кроме *.ins). Исправление 1 к версии 1.4 (от 19.04.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - При ShowMainWindow=0 диалоги размещались неправильно. Версия 1.4 (от 17.04.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~ + Новые переменные: BDE, Date, ProgramGroup, LangStr. - Обработка секции RunApp не зависела от выбранного языка. + Увеличен список поддерживаемых языков (теперь их 105). + При внесении изменений в реестр, в ini-файл, или при создании ярлыка теперь можно использовать флаг инсталляции DONT_OVERWRITE. - При установке в корневой каталог процесс установки проходил некорректно. - Файлы без расширений не попадали под маску "*.*". - В Windows 9x после запуска дистрибутива в некоторых случаях переставала работать клавиша Escape в консольных приложениях. + На фоновом окне программы установки теперь можно размешать картинки (см. 2.2.3.). + Можно задавать расположение диалогов. - В версиях 1.3 и 1.31 не работало копирование внешних файлов (флаг инсталляции EXTERNAL_FILE). + Теперь фоновое окно программы установки можно заполнять какой-либо картинкой, а не только градиентом. + Можно задать, для каких версий Windows предназначается дистрибутив. * Сценарий установки может настраиваться на версию Windows более тонко (расширения ".9x", ".95", ".98", ".nt", ".nt4", ".2k"). - Было невозможно записать в реестр параметр, в имени которого присутствовал символ "\". Теперь такой параметр можно установить, заключив его имя в одинарные или двойные кавычки. * Список языков в диалоге DLG_LANGUAGE теперь сортированный по алфавиту. + Реализована корректная инсталляция и деинсталляция общих (shared) файлов (флаг инсталляции SHARED_FILE). + Реализована мультиязычность в деинсталляторе. * Проверка правильности пароля теперь осуществляется в диалоге DLG_PASSWORD, а не при распаковке зашифрованных файлов. + Добавлен алгоритм сжатия ZIP (формат нестандартный). WinRAR для него не требуется. Есть возможность выбрать, какой алгоритм использовать (см. 3.2.). - Если какой-либо файл в каталоге Presetup не имел атрибутов, он не включался в дистрибутив. * Если добавляемый в ini-файл параметр уже существует, он не будет занесён в журнал инсталляции. + Новый диалог (для выбора программной группы) - DLG_GROUP. * Кнопка "Да" в диалоге DLG_LICENSE теперь не дефолтная, так что пользователь не проскочит его случайно. + При создании ярлыка появилась возможность указать файл с иконкой и её номер, а также комбинацию клавиш быстрого вызова (см. 2.4.5.). + Добавлена возможность указать на необходимость перезагрузки после инсталляции. + Добавлена возможность не показывать финальный диалог. + Добавлена возможность записи в ветку реестра HKEY_USERS. + В диалоге выбора каталога добавлена кнопка создания каталога. * ВНИМАНИЕ! Изменена формулировка фразы о конфликте версий. На более логичную. В связи с этим поменялись местами значения кнопок "Да" и "Нет". + В диалог о конфликте версий добавлены кнопки "Да для всех" и "Нет для всех". + Добавлена возможность удалять ветви и параметры реестра при инсталляции. + Добавлена возможность запускать приложения сразу после распаковки служебных файлов (перед показом любых диалогов). + Добавлена возможность запускать приложения при деинсталляции. + Можно отказаться от отрисовки названия программы в фоновом окне. + Добавлена возможность задавать шрифт, который будет использоваться во всех диалогах. Версия 1.31 (от 22.02.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Некорректно обрабатывались кавычки. Версия 1.3 (от 21.02.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~ - Инсталлятор некорректно обрабатывал локализованные имена файлов. + Небольшие исправления и добавления в документации. * Теперь при копировании файлов замена существующего файла новым не происходит, если у них одинаковые версии и размеры. - В случае, если в пути, где создавался log-файл, не существовали два или более каталогов, инсталляция прерывалась. - В Windows 95 с номером сборки меньше 1111 (младше OSR2) при запуске дистрибутива возникала ошибка "Insufficient free disk space!". - В Windows 95 не создавались ярлыки в папке %CommonDesktop%. * Утилита Build теперь работает с одним параметром - файлом конфигурации сборки (см. 3.2.). + Появилась возможность установить пароль на дистрибутив. + Новый диалог (для ввода пароля) - DLG_PASSWORD. * Файла Gins.lng теперь нет. Каждый язык находится в своём файле, который автоматически помещается в дистрибутив, если в этом есть необходимость. + Добавлен перевод на датский язык. - Если при установке не было создано ни одного каталога, то при деинсталляции не удалялся log-файл. - Набор символов в шрифтах не подстраивался под выбранный язык. - Если при создании ярлыка путь к объекту был заключён в кавычки, то ярлык не создавался. * ВНИМАНИЕ! В секции копирования файлов удалён параметр <версия>. Теперь для хранения информации о версиях файлов введена секция VersionInfo в файле конфигурации Gins.ini (см. 2.2.6.). + Утилита Build может самостоятельно брать информацию о версиях файлов и заносить её в секцию VersionInfo (см. 3.2.). - При деинсталляции не удалялись строки из ini-файлов. - При использовании флага REGISTER_SERVER процесс установки завершался некорректно. - При добавлении в реестр строкового параметра с пустым значением его значение становилось равным значению параметра по умолчанию. - В Windows 9x файл, заблокированный системой, не заменялся, если имел длинное имя. * Изменилась обработка одинарных и двойных кавычек (см. 2.4.). Версия 1.2 (от 24.01.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~ - Инсталлятор некорректно работал с большими файлами сценариев (больше 64К), а деинсталлятор - с большими log-файлами. * Слегка изменён принцип обработки маски в секции копировании файлов. + В диалогах добавлена обработка клавиши Escape. + Новый флаг инсталляции - EXTERNAL_FILE (возможность копирования внешних файлов, не входящих в дистрибутив, см. 2.4.2.). - Из документации было непонятно, откуда берутся текстовые файлы для диалогов DLG_LICENSE и DLG_README (см. 2.2.1., PreInstallDialogSequence). + Добавлен перевод на украинский язык. - Инсталлятор не работал, если каталог для временных файлов по какой-либо причине был удалён. + В файле Languages.txt существенно расширен список доступных языков. + Появилась возможность задавать отдельный битмап для любого диалога (см. 2.2.4.). - Если на вопрос "Заменить файл более ранней версией?" ответить "Нет", то общий индикатор инсталляции показывал неверные данные. - В случае, если в последовательности диалогов не было диалога DLG_DIR, то в параметре DefaultInstallPath не обрабатывались переменные. Версия 1.11 (от 10.01.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Общий индикатор инсталляции отображал неверные данные при размере дистрибутива больше 1 MB. Версия 1.1 (от 6.01.2000) ~~~~~~~~~~~~~~~~~~~~~~~~~ + Новые флаги инсталляции - REGISTER_FONT, DONT_ASK_USER, DONT_OVERWRITE. - В реестр и в ini-файлы не добавлялись параметры с пустыми значениями. - При распаковке служебных файлов не производилась проверка на наличие свободного пространства на диске. * Окно с сообщением теперь масштабируется в зависимости от текста по ширине. - В Windows NT в диалоге выбора языка нормально отображался только стандартный язык операционной системы, а остальные отображались символами "?". * Минимальный шаг индикатора инсталляции теперь около 1 KB (а не один файл, как было раньше). + Добавлен индикатор инсталляции отдельного файла. + Новые переменные - SourcePath, Presetup, BootDrive. + Появилась возможность использовать маски в секции копирования файлов (есть некоторые ограничения, см. Manual.txt). + Появилась возможность запускать внешние приложения. * При определении переменных (секция Variables файла Gins.ini) теперь можно использовать другие переменные любого уровня вложенности. + Появилась возможность проверить, имеет ли пользователь права администратора на компьютере, где происходит инсталляция. - Деинсталлятор не удалял pif-ярлыки. Версия 1.0 (от 20.12.1999) ~~~~~~~~~~~~~~~~~~~~~~~~~~ Первая опубликованная версия.