Разное - Структура для пропатчивания системы\образа

Ответить
 • Просмотры: 2
Аватара пользователя
Smarty

Разное - Структура для пропатчивания системы\образа

Сообщение Smarty »

Структура папок


читать дальше »




Чтобы было понятно дальнейшее описание структуры папок, поймите следующий момент!

От расположения респатчеров в структуре папок зависит работоспособность пакета!

Зависимость файл - патчер
должна быть соблюдена с абсолютной точностью!



Пример #1:

Вы хотите пропатчить файл в папке:

C:\WINDOWS\System32\ru-RU\,

значит в структуре папок патчер для этого файла должен лежать здесь:

X:\WORK\RESOURCES\WINDOWS\System32\ru-RU\



Пример #2:

Вы хотите пропатчить файл в папке:

C:\Program Files\Windows Media Player\,

значит в структуре папок патчер для этого файла должен лежать здесь:

X:\WORK\RESOURCES\Program Files\Windows Media Player\



Эта же структура подходит и для пропатчивания дистрибутива.




Содержание структуры папок




Итак, откройте текстовой файл из вложения, скопируйте ссылку на закачку

и скачайте Структуру папок.



Извлеките из скачанного архива папку WORK в удобное для вас место.



ВНИМАНИЕ! На 64-битных системах скрипты запускать только из Проводника!



Вы можете изменить скрипт под свои нужды, прочитав Ключи командной строки на
Программы - Windows 7 Universal Patcher




Пропатчивание дистрибутива возможно только на Windows 7, т.к. монтирование

происходит утилитой DISM.EXE, которая в предыдущих системах по умолчанию отсутствует!

Это сделано специально, потому что перед обработкой дистрибутива надо проверить работу пропатченной

системы, а сделать это можно только на самой же Windows 7, виртуальная машина для этих целей не годится!

Например, при внесении изменений в файл SHELL32.DLL на некоторых системах наблюдаются

проблемы при воспроизведении звука на акустике 5.1!



Монтирование образа с редакцией Х происходит в папку \MOUNT,

которая создается и удаляется автоматически!

Редакция выбирается вами при запросе скрипта!



------------------------



FILES - для копирования файлов в систему (например, копирование вместе с пакетом оформления визуального стиля)

UPDATES - для обновлений системы в формате MSU и CAB

RESOURCES содержит 2 папки:SHARED - для общих патчеров

EDITIONS - для патчеров конкретных редакций

В основном она предназначена для файла basebrd.dll.mui, содержащего

информацию о редакции системы, которая отображается при входе в систему и

при просмотре меню Справка - О программе...Check.cmd - скрипт для проверки системы после обновлений

Run.cmd - основной скрипт, производящий пропатчивание установленной системы или дистрибутива

Unmount & Clear.cmd - "дежурный" скрипт.Может понадобиться при тестировании интеграции пакета оформления в дистрибутив.

Демонтирует неудачно размонтированный образ и подчищает следы монтирования.Ver.ini
- информационный файл для создания деинсталлятора в апплете "Программы и компоненты"

W7Patcher.exe - патчер для х86

W7Patcher_х64.exe - патчер для х64



------------------------



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

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

но выполнить пропатчивание, можно интегрировать обновления, но не пропатчивать,

а можно выполнить и то и другое.








Windows 7 Universal Patcher
читать дальше »




Windows 7 Universal Patcher
(W7Patcher) представляет собой оболочку для автоматического

применения патчей графических ресурсов, созданных редактором ресурсов Restorator.



По умолчанию при создании респатчера Ресторатор убирает "родное" расширение файла (mui, dll, exe...),

заменяя его на .exe и добавляет к имени файла Patch_.

При пропатчивании W7Patcher отсекает Patch_ и .exe от респатчера, поэтому при сохранении

следует изменить имя респатчера по умолчанию на Patch_имя_файла.расширение.exe.



Пример #1:

Если вы редактировали файл Shell32.dll, то созданный респатчер должен иметь вид Patch_Shell32.dll.exe.



Пример #2:

Если вы редактировали файл Explorer.exe, то созданный респатчер должен иметь вид Patch_Explorer.exe.exe.



Более подробное описание работы патчера по ссылке ниже.



Программы - Windows 7 Universal Patcher




Все вопросы по работе патчера задавать в тему патчера!




Restorator 2007
читать дальше »




Редактирование ресурсов Windows с помощью программы Restorator




Твик реестра для получения прав на файлы


После применения твика в контекстное меню будет добавлен пункт "Стать Владельцем".

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



Для исполняемых файлов (.ехе) твик не работает, поэтому получать на них права нужно вручную!



Получение прав на файлы вручную
читать дальше »




Для получения прав и разрешений надо щелкнуть ПКМ на файле и выбрать "Свойства".

В открывшемся диалоге выбрать вкладку "Безопасность" и нажать кнопку "Дополнительно".







Далее в открывшемся диалоге выбираем вкладку "Владелец" и кнопку "Изменить".







Далее выбираем логин пользователя\имя компьютера и нажимаем кнопку "Применить",

"ОК" в информационном диалоге и "ОК" в диалоге выбора владельца.







Теперь переходим на вкладку "Разрешения" и нажимаем кнопку "Изменить разрешения..."







В следующем диалоге выбираем "Пользователи\имя компьютера" и нажимаем кнопку "Изменить".







Выбираем "Разрешить полный доступ" и жмем "ОК".







Далее кнопкой "ОК" закрываем все диалоги получения прав и разрешений.

Можно приступать к редактированию ресурсов файла!





Сборка пакета оформления х86


читать дальше »




После изменения и тестирования пропатченного системного файла создайте для него респатчер

и положите его (респатчер) в структуру папок на соответствующее место
!

Если при выборе места будет допущена ошибка, то файл в системе пропатчен не будет!



Помните так же, что для структуры папок путь Х:\WORK\RESOURCES соответствует С:\ в системе!



При тестировании пакета не пропатчивайте систему повторно!

Сделайте откат изменений и проверяйте на "чистой" системе!

Это займет немного больше времени, но поможет избежать путаницы и появления ошибок!




Сборка пакета оформления х64


читать дальше »




Сборка пакета оформления только для 64-битной системы идентична сборке для х86 с той лишь разницей,

что при копировании респатчера в папку Х:\WORK\RESOURCES\PROGRAM FILES надо проверять

наличие такого же файла в системной папке C:\PROGRAM FILES (Х86) и, если такой файл там есть,

скопировать респатчер и в папку Х:\WORK\RESOURCES\PROGRAM FILES (Х86).

Соответственно и с остальными "двойными" папками!



Если файл - получатель существует только в папке C:\WINDOWS\SYSWOW64, то и респатчер кладется

только в папку Х:\WORK\RESOURCES\WINDOWS\SYSWOW64.

Если файл - получатель существует и в C:\WINDOWS\SYSTEM32 и в C:\WINDOWS\SYSWOW64,

то и копировать респатчер надо в папки Х:\WORK\RESOURCES\WINDOWS\SYSTEM32 и в Х:\WORK\RESOURCES\WINDOWS\SYSWOW64.




Сборка пакета оформления х86 \ х64 из пакета х86


читать дальше »




Во-первых
учтите, что в некоторых файлах есть одинаковые диалоги, но отображаются они каждый на "своей" системе!

В качестве примера можете посмотреть диалоги в файле C:\Windows\System32\ru-RU\inetcpl.cpl.mui

Во-вторых, я буду исходить из того, что пакет для х86 уже сделан, т.к. эта система проще по структуре!



Как вы знаете, в 64-битной системе есть папки для х64 и х86.

С программными папками всё понятно: PROGRAM FILES для х64 и PROGRAM FILES (Х86) для х86 соответственно,

а с системными папками наоборот: SYSTEM32 для х64 и SYSWOW64 для х86!



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

то респатчеры, созданные для системы х86 подходят для пропатчивания системы х64!

Визуальные стили не привязаны к битности системы, поэтому подходят для обоих систем!



Можно просто скопировать содержимое папок PROGRAM FILES и SYSTEM32 в папки

PROGRAM FILES (Х86) и SYSWOW64 соответственно и пакет будет готов для работы

с 64-битной системой, но...



При использовании этого метода журнал патчера W7Patcher.log
будет содержать записи об ошибках (пример):



Код:

Код: Выделить всё

C:\Windows\SysWOW64\authui.dll [FAIL] [0x00000003]
C:\Windows\System32\ru-RU\cmncliM.dll.mui [FAIL] [0x00000002]

так как содержание папок х64 и х86 не идентично!



Код [0x00000003] указывает, что не найден путь, т.е. конечная папка отсутствует

Код [0x00000002] указывает, что не найден файл - получатель



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

-----------------------



Для создания "чистого" пакета вам надо все 4 папки сравнить по содержанию с 64-битной системой

или с распакованным образом INSTALL.WIM из дистрибутива х64.



Операция проста, но однообразна.

Откройте в двухоконном менеджере файлов системную папку SYSTEM32 и аналогичную папку

с респатчерами и проверьте наличие в системе файла, для которого есть респатчер в папке SYSTEM32.

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



Или пропатчить образ 64-битной системы и следуя ошибкам в журнале патчера

удалить респатчеры для несуществующих файлов.



Таким образом вы "вычистите" ненужные для х64 патчеры, но размер распакованного пакета будет больше!






Сжатие пакетов лучше производить бесплатным архиватором
7-ZIP
, т.к. он дает лучшее сжатие!



Вопросы по конкретным скриптам и случаям задавайте здесь, а не в теме патчера!
Аватара пользователя
Husky

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Husky »

Первый плюс перехода на DISM.EXE



Возможность интеграции обновлений перед пропатчиванием!



В скрипт для обработки дистрибутива после строки монтирования надо добавить строку:



Код:

Код: Выделить всё

DISM.EXE /IMAGE:"%~\WORK\MOUNT" /ADD-PACKAGE /PACKAGEPATH:"%~\WORK\UPDATES"

Соответственно, обновления должны лежать в папке ...\WORK\UPDATES" в виде *.MSU файлов.

Устанавливаются все обновления, находящиеся в папке.



Это просто дополнительная возможность при использовании DISM.EXE.

Пользоваться ей или нет - решать вам!

Все вопросы по обновлениям -
сюда
!
Вложения

[Расширение jpg было запрещено, вложение больше недоступно.]

Аватара пользователя
Bond01

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Bond01 »

Цитата Smarty:



В скрипт для обработки дистрибутива после строки монтирования надо добавить строку:
Разное - Структура для пропатчивания системы\образа





Цитата Smarty:



Соответственно, обновления должны лежать в папке ...\WORK\UPDATES" в виде *.MSU файлов.
Разное - Структура для пропатчивания системы\образа




Smarty, можно поподробнее
Аватара пользователя
Smarty

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Smarty »

Bond01,
читать дальше »




строка монтирования х64:



Код:

Код: Выделить всё

DISM.EXE /MOUNT-WIM /WIMFILE:C:\WORK\INSTALL.WIM /INDEX:4 /MOUNTDIR:C:\WORK\MOUNT

строка монтирования х86:



Код:

Код: Выделить всё

DISM.EXE /MOUNT-WIM /WIMFILE:C:\WORK\INSTALL.WIM /INDEX:5 /MOUNTDIR:C:\WORK\MOUNT

После этих строк добавить:



Код:

Код: Выделить всё

DISM.EXE /IMAGE:C:\WORK\MOUNT /ADD-PACKAGE /PACKAGEPATH:C:\WORK\UPDATES

В папке C:\WORK создайте папку \UPDATES и положите в нее обновления





Во вложении готовый скрипт!
Аватара пользователя
Bond01

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Bond01 »

Bond01,
читать дальше »




строка монтирования х64:



Код:

Код: Выделить всё

DISM.EXE /MOUNT-WIM /WIMFILE:C:\WORK\INSTALL.WIM /INDEX:4 /MOUNTDIR:C:\WORK\MOUNT

строка монтирования х86:



Код:

Код: Выделить всё

DISM.EXE /MOUNT-WIM /WIMFILE:C:\WORK\INSTALL.WIM /INDEX:5 /MOUNTDIR:C:\WORK\MOUNT

После этих строк добавить:



Код:

Код: Выделить всё

DISM.EXE /IMAGE:C:\WORK\MOUNT /ADD-PACKAGE /PACKAGEPATH:C:\WORK\UPDATES

В папке C:\WORK создайте папку \UPDATES и положите в нее обновления





Во вложении готовый скрипт!
Вложения
Distr New.7z
(449 байт) 0 скачиваний
Distr New.7z
(449 байт) 0 скачиваний
Аватара пользователя
Bond01

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Bond01 »

Smarty, я по учебнику делал вот так

Код:

Код: Выделить всё

START /WAIT /d "%Programfiles%\Windows AIK\Tools\Servicing" pkgmgr.exe /o:C:\Work\Mount;C:\Work\Mount\Windows /n:C:\Work\Updates\integrate.xml /s:C:\Work\Sandbox /l:C:\Work\Logs\integrate_updates.log

Получается ваш скрипт более новый?

В принципе я понял с первого раза, - только забыл про WAIK Изображение
Аватара пользователя
Smarty

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Smarty »

Цитата Smarty:



обновления должны лежать в папке ...\WORK\UPDATES" в виде *.MSU файлов.
Разное - Структура для пропатчивания системы\образа




Smarty, наверно уже не в тему пишу, но еще такой вопрос, - как быть если обновления у меня в .CAB архивах?
Аватара пользователя
Bond01

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Bond01 »

Bond01, внутри всех файлов MSU лежат CABы.

Можно эти CABы вытащить и интегрировать их, но обновлений вышло

уже больше двухсот, поэтому лучше интегрировать как есть - и CABы и MSU.

А что за обновления у вас в САВах?
Аватара пользователя
Smarty

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Smarty »

Цитата Smarty:



А что за обновления у вас в САВах?
Разное - Структура для пропатчивания системы\образа




Я интегрирую только критические, они у меня подготовленные/распакованные уже в CAB.
Аватара пользователя
Bond01

Re: Разное - Структура для пропатчивания системы\образа

Сообщение Bond01 »

ВСЕМ!

Обновлены скрипты и структура папок!

Изменения и ссылка - в шапке!
Ответить

Вернуться в «Оформление Windows 11/ 10 / 8 / 7 / Vista»