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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Наборы обновлений для Windows XP/2003/Windows 7 » Инфо - Руководство по созданию аддонов (текущая версия)

Ответить
Настройки темы
Инфо - Руководство по созданию аддонов (текущая версия)

Аватара для volk1234

Старовер


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


Конфигурация

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


Изменения
Автор: volk1234
Дата: 24-09-2010
Описание: новая версия на сайте

Руководство перенесено в статью на сайте, но его обсуждение не закончилось. Любой может добавить в него что- нибудь новенькое.

Предлагаю сосредоточиться пока на двух разделах, которые будут дорабатыватся в ветке и только потом переносится в Руководство.

Сейчас обсуждается статья: - новое приложение 9.
===============
*Если вы заметили орфографические ошибки, пишите, пожалуйста, в личку

Отправлено: 19:19, 27-02-2008

 

Аватара для jameszero

Модератор


Moderator


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

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


volk1234
В файле run каталоги указывать не нужно. Boa Soft всё правильно написал:
Цитата Boa Soft:
скрипт модифицирует svcpack.inf согласно имен *.cat файлов в каталоге SVCPACK
В секцию ProductCatalogsToInstall файла svcpack.inf добавляются имена всех *.cat файлов.»
Этот механизм реализован в скрипте UpdatePack, он сам находит все каталоги безопасности в папках SVCPACK, а то что перечислено в файлах run добавляется в секцию [SetupHotfixesToRun]

И ещё
Цитата volk1234:
Все записи из конфигурационных файлов Dosnet, Sysoc, Txtsetup добавляются в Dosnet.inf, Sysoc.inf, Txtsetup.sif. Записи из конфигурационного файла Run добавляется в секцию [Components] файла svcpack.inf »
Следует читать
Цитата:
Все записи из конфигурационных файлов Dosnet и Txtsetup добавляются в чистом виде в Dosnet.inf и Txtsetup.sif, а записи из конфигурационного файла Sysoc добавляются в секцию [Components] файла Sysoc.inf

-------
RuntimePack официальный сайт
--
мои аддоны в облаке

Не было печали, апдейтов накачали.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:32, 02-04-2008 | #91



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

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


Аватара для volk1234

Старовер


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

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


исправил теперь выглядит так:
Цитата volk1234:
Все записи в чистом виде из конфигурационных файлов Dosnet, Txtsetup добавляются в Dosnet.inf, Txtsetup.sif, а записи из Svcpack добавляются в секцию [Components] файла svcpack.inf . Записи из конфигурационного файла Run добавляется в секцию [SetupHotfixesToRun] файла svcpack.inf

Далее скрипт модифицирует svcpack.inf согласно имен *.cat - файлов размещенных в каталоге SVCPACK аддона(если такие файлы требуются). В секцию [ProductCatalogsToInstall] файла svcpack.inf добавляются имена всех *.cat файлов.
»
Добавил эту инфу также в раздел аддонов типа svcpack

BoaSoft

Не напишите пару абзацев по работе вашего патча sfcfiles.dll ??

-------

Ю-ху!


Последний раз редактировалось volk1234, 02-04-2008 в 19:10.


Отправлено: 18:46, 02-04-2008 | #92


Аватара для Zetoke

Ветеран


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

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


Цитата volk1234:
Не напишите пару абзацев по работе вашего патча sfcfiles.dll ?? »
volk1234, А по-моему в ReadMe к патчу все написано.

Отправлено: 20:00, 02-04-2008 | #93


Аватара для jameszero

Модератор


Moderator


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

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


volk1234
Цитата volk1234:
а записи из Svcpack добавляются в секцию [Components] файла svcpack.inf»
Подчёркнутое заменить на sysoc ))

-------
RuntimePack официальный сайт
--
мои аддоны в облаке

Не было печали, апдейтов накачали.


Отправлено: 21:56, 02-04-2008 | #94


Аватара для Boa Soft

Компьютерный шаман


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

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


Зачем это нужно?

Большая часть важных для системы файлов в Windows Xp защищена от удаления и изменения
функцией WPF - windows file protection.

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

Можно полностью отключить защиту, но тогда система становится беззащитной перед
шаловливыми руками юзьверя или кривоперепакованными дистрибутивами игрушек.

Результат - отсутствующие файлы, Dll hell и падение системы.

Обычно же надо исключить только несколько фалов. Этого легко достичь патчем SfcFiles.dll, заставив ее "забыть" о этих файлах.

2. Алгоритм работы.

Проограмма дествует очень просто

Какие файлы защищены - это система узнает из SfcFiles.dll. Эта библиотека не несет в себе прямых функций защиты, а только выдает список защищенных файлов.

Там находятся списки защишаемых фалов, целых 5 штук для разных систем:
Xp pro
Xp home
Xp tablet PC
Xp mediacenter
Xp starter

В серверной библиотечке тоже 5 списков, но их назначения (соответствия версиям продуктов) я не выяснял.

Система защиты получает список защищенных файлов с полными путями из этой библиотеки, вызывая Api - функцию SfcGetFiles. Нам же нужно, чтобы в этот список не попали нужные нам файлы.

В этой версии применен новый алгоритм - патчится не строковые значения, а таблица указателей. Этих таблиц так же 5 - по числу версий продукта. В этой таблице просто происходит подмена указателей
на выводимые из защиты файлы на указатель на любой из оставшихся файлов. В результате при выдаче списка файлов просто некотрые файлы будут присутствовать более одного раза, а работа SFC никак не изменится - все невыведенные файлы будут защищены..

Программа автоматом корректирует CRC в PE заголовке файла и файл готов к применению.
Если в логе говорится, что файл не найден, скорее всего он не входит в список защищенных. Для стабильного результата патчите всегда оригинал, но повторный патч библиотеки, уже пропатченной этой
версией патчера, не приведет к ошибке.

NB! Если патчить библиотеку, ранее уже патченную более старыми версиями патчера или другими утилитами, то возможны разные непредсказуемые проблемы.

Прверялось с SfcFiles.dll от windows sp2 rus/ sp2 en/ sp1 server rus.
(Во всей линейке OS одного семейства и сервиспака библиотека одинакова!)

С другими версиями программа так же должна работать.

Проверить правильность работы можно на рабочей OS, временно заменив оригинальную библиотеку на патченую, проигнорировав крик о вставке диска и перезагрузившись.

SFC /scannow должно работать!!! Если нет - то увы.

-------
Человеческая лень - главная движущая сила технического прогресса.

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:13, 03-04-2008 | #95


Аватара для volk1234

Старовер


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

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


Гм, уже хотел вставить в инструкцию, но запутался в конфигурационных файлах
3.6 KillWFP.lst
3.8 DelDrv.lst
3.9 DelOC.lst

Deldrv это список для sfcfiles, а deloc? а killwfp ?
или же все эти файлы относятся к патчеру?
После лазанья по форуму перефразирую вопрос:
все 3 файла в итоге используют sfcpatch ?

-------

Ю-ху!


Отправлено: 01:44, 03-04-2008 | #96


Аватара для volk1234

Старовер


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

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


Обновлено руководство по написанию аддонов.
+Аддоны изменяющие дистрибутив. размещено в этом посте.
+приложение 6 Патч Sfcfiles.dll


Аддоны изменяющие дистрибутив.

читать дальше »
Это тип аддонов, изменяющих дистрибутив в процессе интеграции обновлений и других аддонов (не всегда), т.е. не в процессе установки в отличие от других типов.
Относятся к категории т.н. служебных аддонов. Позволяет получить функциональность в процессе установки, которую невозможно получить другими способами. Описать типичную структуру такого аддона или привести общую инструкцию не возможно. Причины банальны: изменение ресурсов возможно несколькими способами, требует солидных знаний, долгого тестирования на стабильность.
Пример "мирного" применения аддона изменяющего системные ресурсы: аддон Vista Path изменяющий стандартные иконки на более красивые. Или аддон ZZ_multiboot, не изменяет дистрибутивную папку (I386), но создает структуру папок и записывает необходимые файлы и модифицирует их для получения мульти загрузочного диска. Причем, можно создавать диски N-in-1 (например Windows Home и Proffesional версий + множество вариантов загрузки из стандартного аддона Z_DRV_INST).

Еще пример, аддон Z_DRV_INST не модифицирует файлы в дистрибутиве, но слегка изменяет и дополняет его новой функциональностью (Подменой Setup.exe во время установки и установкой драйверов).

При затрагивании важных системных файлов приходится иметь дело с Windows File Protection. Как ее обойти читайте здесь .

Если по каким- либо причинам использовать патч sfcfiles.dll нельзя или невозможно, можно только посоветовать эту статью раздел Modify PE, про изменение контрольной суммы файлов.


======
я конечно понимаю, что написать можно и больше только лично мне нечего, бо не знаю больше.

-------

Ю-ху!


Последний раз редактировалось volk1234, 06-04-2008 в 19:39.

Это сообщение посчитали полезным следующие участники:

Отправлено: 02:20, 03-04-2008 | #97


Аватара для volk1234

Старовер


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

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


Приложение 6. Патч Sfcfiles.dll
читать дальше »

В составе Update pack приcутствует патч SFCfiles.dll написанный участником конференции BoaSoft
Взаимодействовать с патчером возможно путем конфигурационных файлов KillWFP.lst, DelDrv.lst, DelOC.lst.

Синтаксис простой: название файла с расширением для которого необходимо отключить WFP и\или который
необходимо удалить из дистрибутива.

Описание патча sfcfiles.dll предоставим автору:

Зачем это нужно?

Большая часть важных для системы файлов в Windows Xp защищена от удаления и изменения
функцией WPF - windows file protection.

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

Можно полностью отключить защиту, но тогда система становится беззащитной перед шаловливыми руками пользователя или криво перепакованными дистрибутивами игрушек.

Результат - отсутствующие файлы, Dll hell и падение системы.

Обычно же надо исключить только несколько фалов. Этого легко достичь патчем SfcFiles.dll, заставив ее "забыть" о этих файлах.

Алгоритм работы.

Программа действует очень просто

Какие файлы защищены - это система узнает из SfcFiles.dll. Эта библиотека не несет в себе прямых функций защиты, а только выдает список защищенных файлов.

Там находятся списки защищаемых файлов, целых 5 штук для разных систем:
Xp pro
Xp home
Xp tablet PC
Xp mediacenter
Xp starter

В серверной библиотечке тоже 5 списков, но их назначения (соответствия версиям продуктов) не выяснены.

Система защиты получает список защищенных файлов с полными путями из этой библиотеки, вызывая Api - функцию SfcGetFiles. Нам же нужно, чтобы в этот список не попали нужные нам файлы.

В 3-й версии патчера применен новый алгоритм - патчатся не строковые значения, а таблица указателей. Этих таблиц так же 5 - по числу версий продукта. В этой таблице просто происходит подмена указателей на выводимые из защиты файлы на указатель на любой из оставшихся файлов. В результате при выдаче списка файлов просто некоторые файлы будут присутствовать более одного раза, а работа SFC никак не изменится - все не выведенные файлы будут защищены..

Патчер автоматом корректирует CRC в PE заголовке файла и файл готов к применению.
Если в логе говорится, что файл не найден, скорее всего он не входит в список защищенных. Для стабильного результата патчите всегда оригинал, но повторный патч библиотеки, уже пропатченной этой версией патчера, не приведет к ошибке.

NB! Если патчить библиотеку, ранее уже патченную более старыми версиями патчера или другими утилитами, то возможны разные непредсказуемые проблемы.

Проверялось с SfcFiles.dll от windows sp2 rus/ sp2 en/ sp1/2003 server rus.
(Во всей линейке OS одного семейства и сервиспака библиотека одинакова!)

С другими версиями программа так же должна работать.

Проверить правильность работы можно на рабочей OS, временно заменив оригинальную библиотеку на патченую, проигнорировав крик о вставке диска и перезагрузившись.

SFC /scannow должно работать!!! Если нет - то увы.

-------

Ю-ху!


Последний раз редактировалось volk1234, 07-04-2008 в 17:00.


Отправлено: 14:10, 03-04-2008 | #98


Ветеран


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

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


Цитата volk1234:
Аддоны изменяющие дистрибутив. »
дополнение:
......
Причины банальны: эти изменения затрагивают весь дистрибутив как таковой, либо внедрение функциональности установки которую не возможно получить другими способами.
......

Например zz_ZZ_MultiBoot или Z_DRV_INST.
zz_multiboot фактически не изменяет дистрибутивную папку (I386), но создает структуру папок и записывает необходимые файлы и модифицирует их для получения мультизагрузочного диска. Причем, можно создавать диски N-in-1 (например Home и Prof версий (+ множестово вариантов загрузки из стандартного Z_DRV_INST)) модификацией скрипта zz_multiboot.

Z_DRV_INST не модифицирует файлы в дистрибутиве, но слегка изменяет и дополняет его новой функциональностью (Fake Setup и установкой драйверов).

Для Z_DRV_INST можно также написать «аддоны» (внедрить программы), которые будут выполнять некоторые функции которых нет в режиме установки с CD, но есть в других режимах (например UDB файлы), или небольшая корректировка скрипта Winnt.sif. Примерами таких аддонов являются WSE, Changer и д.р.
.....

за одно орфография:
читать дальше »
Это тип аддонов изменяющих дистрибутив в процессе интеграции обновлений и других аддонов, т.е. как правило не в процессе установке в отличИе от других типов.

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


Отправлено: 18:44, 03-04-2008 | #99


Аватара для Zetoke

Ветеран


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

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


Я тут пару очепяток нашел и ошибок. Но прежде чем править проверьте, вдруг я не прав

читать дальше »
Цитата volk1234:
в дистрибутив Windows XP\2003 сторонних программ или изменения »
Цитата volk1234:
Аддоны, использующие SYSOC »
Цитата volk1234:
для начала »
может лучше сначала ?
Цитата volk1234:
По сути собирается собственный инсталлятор(в отличие от SVCPACK, где зачастую используются готовые инсталляторы с ключами тихой установки). »
Цитата volk1234:
собираем эту информацию об установке программы »
По-моему т.к. следующее слово начинается с гласной буквы.
Цитата volk1234:
собираем эту информацию об установке программы, для которой будет создаваться аддон »
Цитата volk1234:
установка этих файлов осуществляется с помощью inf-скрипта, который пишется »
Цитата volk1234:
копируемых в них файлов, добавления ключей »
Цитата volk1234:
с его помощью копируются файлы и ульи реестра с диска »
?
Цитата volk1234:
На ранних этапах установки Windows устанавливаются »
И вообще получается масло масляное
Цитата volk1234:
сверяется с файлом unattended.txt(winnt.sif), если он есть »
Вроде так
Цитата volk1234:
секции из sysoc,txtsetup,dosnet, находящихся в корневой папке аддона, переносятся »
Цитата volk1234:
папки аддона Files копируются в папку дистрибутива I386 »
Может поменять местами, а то получается аддон Files и дистрибутив I386.
Цитата volk1234:
аддона, прописанные в списке txtsetup.sif, копируются »
Цитата volk1234:
вместе с дополнительными компонентами из sysoc.inf »
Цитата volk1234:
Пример аддона, использующего SYSOC »
Цитата volk1234:
копированием файлов из cab-файла, следите, чтобы имена файлов »
Цитата volk1234:
интегрировать аддон, но при этом НЕ установить его, чтобы он был доступен впоследствии для установки через менеджер »
Цитата volk1234:
менеджер компонентов Windows, необходимо в установочных inf-ах каждого аддоназакомментировать параметр Modes »
Т.к. есть слово необходимо, то уже не нужно слово нужно
Цитата volk1234:
Незабывайте про секцию [DefaultInstall] в inf скрипте »
Цитата volk1234:
Она необходима, чтобы inf устанавливался в будуще »
Цитата volk1234:
2.Аддоны, использующие для интеграции SVCPACK. »
Цитата volk1234:
SVCPACK предназначался для установки обновлений, вышедших после выпуска ОС »
Цитата volk1234:
вместо обновленийможно устанавливать и другие приложения »
Запятая не нужна
Цитата volk1234:
что позволяет использовать обычные инсталляторы. »
Цитата volk1234:
Для создания аддона этого типа используются тихие инсталляторы »
Цитата volk1234:
минимально необходим Run, в котором указывается »
Цитата volk1234:
имя исполняемого файла тихого инсталлятора, располагающегося в папке Files\SVCPACK »
Цитата volk1234:
Однако, при необходимости »
По-моему нужна запятая
Цитата volk1234:
файлы:KillWFP.lst,Start, Finish,Required, Conflict, используемые »
Цитата volk1234:
Приложения, внесенные в секцию [SetupHotfixesToRun] »
Цитата volk1234:
обычно используют SFX архивы(7z, RAR, и т.д.), либо исполняемые файлы »
Цитата volk1234:
"живую" систему или "тихие" инсталляторы. »
Цитата volk1234:
или файл контейнер(архив с необходимыми »
Цитата volk1234:
необходимыми для установки ключами), либо ничего не кладут »
Цитата volk1234:
6 Аддоны, предназначенные для внесения изменений в реестр и настройки ОС »
Цитата volk1234:
8 Аддоны, предназначенные для удаления компонентов ОС и драйверов. »
Цитата volk1234:
пост-обработки информации или создания образа. »
Может лучше так?
Цитата volk1234:
Аддоны, изменяющие дистрибутив. »
Цитата volk1234:
Это тип аддонов, изменяющих дистрибутив »
Цитата volk1234:
как правило не в процессе установке в отличие от других типов. »
Цитата volk1234:
Описать типичную структуру такого аддона или привести инструкции к изготовлению таких аддонов не возможно. »
Может это словосочетание убрать? Повтор получается
Цитата volk1234:
системные ресурсы: аддон Vista Path, изменяющий »
Цитата volk1234:
Если по каким- либо причинамиспользовать патч sfcfiles.dll нельзя или невозможно »
Запятая не нужна
Цитата volk1234:
мне нечего, ибо незнаю больше. »

Цитата volk1234:
приcутствует патч SFCfiles.dll, написанный учасником »
Цитата volk1234:
название файла с расширением, для которого необходимо »
Цитата volk1234:
Если Вы хотите удалять или изменять некоторые файлы »
Цитата volk1234:
произойдет замена файлов на оригинальные »
Цитата volk1234:
Обычно же надо исключить только несколько файлов »
Цитата volk1234:
заставив ее "забыть" об этих файлах »
Цитата volk1234:
Там находятся списки защищаемых фалов »
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:25, 03-04-2008 | #100



Компьютерный форум OSzone.net » Автоматическая установка Windows » Наборы обновлений для Windows XP/2003/Windows 7 » Инфо - Руководство по созданию аддонов (текущая версия)

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - [решено] Как определить какая версия XP Корпоративка или Oem версия? Rock Microsoft Windows 2000/XP 2 10-01-2008 11:18
Текущая настройка безопасности ActiveX Motto Защита компьютерных систем 1 26-12-2004 19:05
Что такое текущая директория? Guest Программирование и базы данных 11 24-07-2004 00:19




 
Переход