TepliyS
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Как вшить программу в дистрибутив Windows XP (перевод статьи + небольшая отсебятина «How To Create New ProgramAddons») Доброго времени дня. Сегодня хочу вам рассказать о том , как сделать пакет с любимой вам программой и внедрить (интегрировать) его в дистрибутив собранной вами Автоматической установки Windows XP.Процесс этот несложный и не требующий каких –либо дополнительных умственных затрат. Итак поехали. Полагаю у вас могут возникнуть вопрос по поводу того , для чего нужно вшивать программу в дистрибутив и лишить пользователя возможности выбора программы для установки. Отвечу так – что многие (или даже подавляющее большинство) делает Unattended XP исключительно под себя .Я тоже не исключение. И по мне, намного удобнее вшить в дистрибутив те программы которые мне необходимы, чем делать после дополнительные мышедвижения и возиться с постинсталлерами (такой уж я ленивый человек). Да и к тому же все жизненно важные программы и утилиты , такие как – антивирус , архиватор , антиспай и другие просто необходимо внедрять и устанавливать насильно … Надеюсь убедил .Хотя забыл еще один момент – это просто интересно и научиться этому несложно , так зачем же лишать себя такой возможности. Шаг первый Для начала нужно собрать SFX архив .О том как это сделать подробно описывалось в статье «Создание SFX архива» (которую можно найти в Учебнике Автоматической установки – скачать можно здесь или же найти ее на сайте unattended.oszone.net).Большое количество ключей для «тихой установки» приложений можно найти здесь на английском языке или поискать на форуме OsZone . Шаг второй Дальше создайте папку с любым именем. Внутри этой папки создайте еще одну под именем SVCPACK и поместите свой перепакованный инсталляционный пакет туда. Потом создайте в любом текстовом редакторе ini файл и сохраните его под именем ENTRIES_PROGRAMNAME.INI ,но не помещайте (ВАЖНО!!!) его в папку SVCPACK. Вместо PROGRAMNAME укажите название перепакованной программы (например ENTRIES_OPERA.INI ). Откройте созданный ini-файл и добавьте туда секции: [general] , [EditFile] и [AddProgram] .Пример заполнения ini-файла смотрите ниже. Код: [general] builddate=12/01/2005 ; дата выпуска (релиза) программы description=Program description ;Описание программы language=English ;язык интерфейса (насколько я понял) title=Program ;название программы version=1.0 ; версия программы website=http://www.programwebsite.com/ ; вэб- сайт программы [EditFile] I386\SVCPACK.INF,SetupHotfixesToRun,AddProgram ;эту секцию оставьте без изменения [AddProgram] PROGRAM.EXE ;имя(название) перепакованного пакета , которой вы поместили в папку SVCPACK | Шаг последний Итак у вас есть папка SVCPACK, в которую вы поместили перепакованный «тихий инсталл» и ini-файл ENTRIES_PROGRAMNAME.INI , он должен находиться вне папки SVCPACK . Теперь осталось только собрать все эти файлы в один CAB- файл. Сделать это можно командой makecab или любой программой умеющей сжимать файлы в CAB архив (например picozip или power archiver ) Я пользовался двумя способами командой makecab – правда пришлось попотеть и почитать (здесь ) .И второй способ – это плагин для TotalCommandera (забирать здесь ) У кого нет желания читать. Тогда повторяйте за мной. В папку с вашими заготовками поместите еще один файл (под любым коротким именем – cabm.txt) Содержание этого файла ниже : 1.С комментариями (ВАЖНО!!!) – не копируйте этот листинг , при запуске команды на исполнение получите море ошибок. Приведен только для ознакомления. Код: .Set Cabinet=on (включить режим сжатия всех файлов в один кабинет); .Set Compress=on (включить сжатие); .Set CompressionType=MSZIP (сжатие по алгоритму ZIP); .Set CompressionLevel=7 (максимальный уровень сжатия); .Set CabinetNameTemplate="My.CAB" (маска имени полученного файла); .Set DiskDirectoryTemplate=".." (положить в каталог на уровень выше папки); Далее идут абсолютные пути файлов для архивирования. E:\Trash\CABFILES\SVCPACK\abiword.exe E:\Trash\CABFILES\ENTRIES_ABIWORD.ini | 2.Этот листинг можно скопировать. Здесь нужно исправить значение параметра .Set CabinetNameTemplate="My.CAB" если хотите получить название CAB файла .А также заменить абсолютные пути к файлам для архивирования. Код: .Set Cabinet=on; .Set Compress=on; .Set CompressionType=MSZIP; .Set CompressionLevel=7; .Set CabinetNameTemplate="ABICAB.CAB"; .Set DiskDirectoryTemplate=".."; E:\Trash\CABFILES\SVCPACK\abiword.exe E:\Trash\CABFILES\ENTRIES_ABIWORD.ini | Остается только в командной строке набрать makecab /f cabm.txt и понаблюдать за таким вот окошком. И на выходе получается ABICAB.CAB. Или же в TotalCommandere выделяем наши файлы ,нажимаем F5 выскакивает такой диалог Жмем Enter и выбираем указанный на рисунке ключ в выпадающем списке второго диалога И жмем Enter повторно. Возможно вылетит еще такое окошко На него тоже отвечаем Enter-ом Интеграция в дистрибутив полученного CAB файла осуществляется либо NLite Потом добавляем CAB файл И ждем. Или же RVM Integrator – ом Здесь вам нужно в первой строке указать путь к дистрибутиву ХР и в последнем свой CAB – файл. Если вы все проделали правильно , то файл из вашего перепакованного дистрибутива (у меня abiword.exe) должен быть в папке путь к вашему дистрибутиву ХР\I386\SVCPACK\ABIWORD.EXE. И еще в файле SVPACK.INF , который вы также найдете в папке I386 вашего дистрибутива (правда там он будет под другим именем SVPACK.IN_ , и для его просмотра его надо будет распаковать командой EXTRACT SVPACK.IN_) , в секции [SetupHotfixesToRun] вы должны увидеть строку с именем вашего перепакованного инсталла (у меня это abiword.exe /S) . Дополнение от 07/12/2005 Учитывая ваши многочисленные письма по поводу того что использование команды makecab и других отмеченных в статье архиваторных плагинов не всегда приводит к желаемому результату. Представляю вашему вниманию еще одну программу являющуюся GUI оболочкой к утилите makecab. Называется она CabPack и проживает по адресу http://www.larshederer.homepage.t-online.de/english.htm . Размер у нее небольшой – всего 466 кб (кстати на сайте лежит сам дистрибутив с программой + апдейт к ней исправляющий небольшие ошибки в самой программе).Так что скачайте и его в обязательном порядке , благо размер небольшой (274 кб).Скачав все это дело распакуйте в любой папке и запустите CABPACK.EXE. Остальные инструкции на скриншоте снизу. Полученный файл Compressed.cab переименуйте в AddonsИмяВашейПрограммы.cab (например AddonsOpera851.cab) . И интегрируйте вышеуказанными способами.Addons в названии файла необходим (как выяснилось) иначе RVM Integrator не видит этот файл. Вроде все .Если возникнут вопросы то пишите на zaurbb@gmail.com С уважением , Заур Багиров ака Теплый Снег Baku Azerbaijan 1/12/2005 Opera - 3,85 мб Оффлайн версию этой статьи забирайте здесь P.S. Готовые программные аддоны можно найти здесь Вот держите первый перекованный инсталл для интеграции. Это лучший браузер (ИМХО) Опера. Версия 8,51 билд 7712 меню - расширенное от Мангуста + keyboard.ini + search.ini По ссылке ниже лежит каб архив , готовый для интеграции.Также, распаковав архив в папке SVCPACK вы найдете "тихий инсталл" Оперы.И так я надеюсь - что это первый , но последний пакет для ингрирования в дистрибутив Антивирусная программа NOD32 русская стандартная версия 2.50.26 в триальном исполнении для интеграции в дистрибутив вот здесь 8 мб Спасибо dimadr |