Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » (статья) Как вшить программу в дистрибутив Windows XP

Ответить
Настройки темы
(статья) Как вшить программу в дистрибутив Windows XP

Аватара для Теплый Снег

Старожил


Сообщения: 189
Благодарности: 35

Профиль | Отправить PM | Цитировать


Изменения
Автор: Теплый Снег
Дата: 08-12-2005
Описание: Добавления
Как вшить программу в дистрибутив 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
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:20, 05-12-2005

 

Аватара для Porscheman

Пользователь


Сообщения: 101
Благодарности: 4

Профиль | Отправить PM | Цитировать


boss911
Спасибо! Только это не совсем то,что хочется...

Повторюсь: дело в том, что в дистрибутив уже вживлен WinRAR, то есть наличиствует winrar.cab и winrar.inf на которые где-то прописаны ссылки и при удалении этих двух файлов винда при установке ругается. Следовательно их надо модифицировать.
В данном случае за ярлыки отвечает inf-файл, а сами файлы в cab-файле.
Сейсас пойду попытаюсь сделать то, что уже написано мною выше. Просто не хотелось экспериментировать наобум. Отпишусь, может кому потом пригодится.

-------
Life is too short to drink cheap beer...


Отправлено: 16:59, 04-02-2006 | #31



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Alex333

Пользователь


Сообщения: 77
Благодарности: 6

Профиль | Отправить PM | Цитировать


А как таким образом установить программу, требующую регистрации(ввода серийника)?
Здесь об этом ни слова - а ведь большая часть качественного софта требует регистрации.
И еще вопрос: программа NeroBurningRoom английская, требуется установка русификатора. Для русификатора создать свой SFX-архив? Как соблюсти порядок установки(сперва программа, потом русификатор).

Все параметры, в том числе серийник, прописывать в SFX-архиве?

Последний раз редактировалось Alex333, 08-02-2006 в 22:47.


Отправлено: 22:36, 08-02-2006 | #32


Аватара для Теплый Снег

Старожил


Сообщения: 189
Благодарности: 35

Профиль | Отправить PM | Цитировать


Цитата:
А как таким образом установить программу, требующую регистрации(ввода серийника)? Здесь об этом ни слова - а ведь большая часть качественного софта требует регистрации. И еще вопрос: программа NeroBurningRoom английская, требуется установка русификатора. Для русификатора создать свой SFX-архив? Как соблюсти порядок установки(сперва программа, потом русификатор).

Все параметры, в том числе серийник, прописывать в SFX-архиве?


Регистрация программ дело сугубо индивидуальная. ОДни регистрируются кей-файлами например WinRar , другие рег-файлами - SystemMechanic (старый по крайней мере так регистрируется) , третьи всевозможными патчами - Alcohol 120% ... И так далее .Как видите универсального средства регистрации нет .И все что вам нужно - это немного времени , интернет и любой поисковик.

А насчет русификации - они тоже бывают разными и подход к ним такой же как и к регистрации.

Удачи.

-------
Лаборатория Теплого Снега


Отправлено: 10:40, 09-02-2006 | #33


Аватара для AlexALSP

Пользователь


Сообщения: 106
Благодарности: 3

Профиль | Цитировать


А можно еще раз описать что где вылетает. А то написано в шапке, вот токое, там токое а самих рисунков посмотреть нема.

Я пробовал макекабом но шото не то получается. В кабе один только ини.

Расскажите еще раз как его создавать и интегрировать. Ладно интегрировать или помещать в внинду понят7но а вот как создать и все овормить не понятно.

Отправлено: 09:05, 13-11-2007 | #34


Новый участник


Сообщения: 15
Благодарности: 2

Профиль | Цитировать


Проблема такая. Когда открываю созданный CAB-файл внутри него только ini-файлик.EXEшки рядом нету. В чём может быть проблема?

Отправлено: 03:25, 01-10-2008 | #35


(*.*)


Сообщения: 36556
Благодарности: 6694

Профиль | Сайт | Отправить PM | Цитировать


Stopi4, makecab добавляет один файл за раз, а вам нужно несколько. Пуск - выполнить - iexpress

См. также Руководство по созданию аддонов для набора обновлений UpdatePack-RUS

-------
Канал Windows 11, etc | Чат @winsiders


Отправлено: 03:45, 01-10-2008 | #36


Новый участник


Сообщения: 15
Благодарности: 2

Профиль | Цитировать


Vadikan, дело в том что я автоматизирую сей процесс, т.к. программ штук 40ок ++ обновляются каждые пару месяцев. Написал консольное приложения на C# которое используя возможности CMD выолняет построенные выше алгоритм несколько раз. Как можно обойти использование программы "iexpress"? а использовать только makecab или его "массовый" аналог.

Отправлено: 13:36, 01-10-2008 | #37


Ветеран


Сообщения: 894
Благодарности: 137

Профиль | Отправить PM | Цитировать


Цитата Stopi4:
Как можно обойти использование программы "iexpress"? а использовать только makecab »
cmd /k makecab /?
и прочитать по поводу ключа /F

-------
Я не развожу политику в подписи
ПТН ПНХ


Отправлено: 16:58, 01-10-2008 | #38


Пользователь


Сообщения: 79
Благодарности: 2

Профиль | Отправить PM | Цитировать


Как создать ini файл.Не могу понять.

Отправлено: 12:21, 14-11-2008 | #39


Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите собрал cab по интрукции пробовал итегрировать обоими способами но в папке \I386\SVCPACK\ ничего нет в чем может быть проблема

Отправлено: 01:06, 06-01-2009 | #40



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » (статья) Как вшить программу в дистрибутив Windows XP

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[статья] Добавление файлов в дистрибутив Windows Vista Vadikan Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista 4 05-03-2014 11:13
VBA - [решено] Как вшить ресурсы в файл dll ProgrammerPC Программирование и базы данных 3 02-12-2009 02:43
Разное - Вшить в дистрибутив windows XP новый загрузочный экран zmeeust Оформление Windows XP 16 03-07-2009 17:20
Vista / 2008 - (Статья) Интеграция Обновлений и Extras в дистрибутив Windows Vista prokazzza Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista 81 23-05-2009 11:12
RIS & Windows 2000 Pro - как вшить драйвер сетевой карты? Gaara_of_the_Desert Автоматическая установка Windows 2000/XP/2003 1 14-11-2007 11:31




 
Переход