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

Компьютерный форум OSzone.net » Изменение внешнего вида Windows » Оформление Windows 10 / 8 / 7 / Vista » Программы - Windows 7 Universal Patcher

Ответить
Настройки темы
Программы - Windows 7 Universal Patcher

Extractor


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

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


Изменения
Автор: Mr dUSHA
Дата: 31-03-2019
Вложения
Тип файла: 7z W7Patcher_19.03.24.1.7z
(99.3 Kb, 184 просмотров)
Windows 7 Universal Patcher


Описание программы:
Утилита W7Patcher представляет собой оболочку для автоматического применения патчей графических ресурсов, созданных редактором ресурсов Restorator, выполненных в виде RES-файлов, автоматизированного копирования или замены файлов в системных папках ОС с автоматической простановкой необходимых прав доступа на файлы, и много чего другого...

Применение патчей графических ресурсов или копирование пакетов файлов возможно как для "живой системы", так и для смонтированного в какую-либо папку образа install.wim из дистрибутива Windows 7/8.
Утилита работает на платформах Windows 7/8.

После монтирования нужной редакции ОС из дистрибутивного образа install.wim в какую-либо папку, в ней мы получаем фактически дерево папок системного диска установленной ОС Windows 7/8. Таким образом обработка как дистрибутива, так и живой установленной системы производится по одним и тем же принципам.
Набор ресурсных патчей для всех режимов пропатчивания применяется один и тот же.


Ключи командной строки:
читать дальше »

Прототип:
W7Patcher.exe [-P <DIR>] [-PBR <DIR>] [-C <DIR>] [-D <DIR>] [-V <DIR> [-FP]]|[-BN <NAME>] [-U <DIR>] [-N] [-VLOG] [-R] [-MU] [-RL] [-SD]


Основные ключи:

-P <DIR> - Пропатчивание системы графическими ресурсами, выполненными в виде RES-файов. Вместо <DIR> указывается папка, в которой расположено дерево папок набора RES-файов.

-PBR <DIR> - Дополнительный ключ, аналогичный по функциональности ключу -P <DIR>, и в паре с ним предназначенный для одновременного накладывания двух пакетов ресурсов, основного и брендингового из одной командной строки одним запуском утилиты.

-V <DIR> - Пропатчивание системы ресурсными патчами с контролем версий пропатчиваемых файлов. Вместо <DIR> указывается папка, в которой расположена ранее созданная утилитой в процессе обработки системы точка восстановления (Backup), по которой производится сравнение версий файлов. Вместе с этим ключом необходимо указывать также ключ -P <DIR>, в котором задается дерево патчей, накладываемых на измененные в системе файлы.

-FP - Дополнительный ключ для ключа -V, включающий принудительное пропатчивание тех файлов, которые в опорной точке восстановления присутствуют, но версии одинаковые.
Предназначен для восстановления оформления системы, например, после прохода системной утилиты sfc /scannow, восстанавливающей оригинальные подписанные не патченый файлы.

-VLOG - Дополнительный ключ для ключа -V. Симуляция выполнения пропатчивания с контролем версий, при которой ни каких реальных манипуляций с файлами не производится, а только ведется журнал W7Patcher.log.
Этот режим можно применять в информационных целях для проверки текущего состояния системы и точки восстановления, не производя реального пропатчивания.

-С <DIR> - Копирование новых или замена старых системных файлов новыми. Вместо <DIR> указывается папка, в которой расположено дерево папок с новыми копируемыми файлами.

-U <DIR> - Откат изменений. Вместо <DIR> нужная точка отката из Backup-дерева, из которой производится восстановление оригинальных файлов в систему.
В функционал отката изменений встроен механизм контроля версий восстанавливаемых файлов. При восстановлении файла из Backup-а сравниваются его версии в Backup-е и в самой системе, и если версии отличаются, то файл не восстанавливается. Такое поведение утилиты необходимо для предотвращения ошибочной замены более новых системных файлов, полученных например из Windows Update, более старыми версиями, когда-то сохраненными в Backup утилитой.

-S <DIR> - Исходная папка обработка файлов в которой производится функционалом Resources extractor утилиты (см. ниже) .

-D <DIR> - Папка назначения с целевой системой, обработка которой производится (например это может быть папка, в которую смонтирован файл install.wim).
Если производится обработка "живой системы", то этот ключ указывать не нужно.

-BN <NAME> - Имя подпапки с Backup-ом, которая создается в корневой \W7P_Backups. Если имени не задать, то оно будет сгенерировано автоматически по текущей дате и времени.

-R - Автоматическая перезагрузка после обработки "живой системы".

-N - Отключение создания точки восстановления (Backup-а).

-MU - При пропатчивании "живой системы" создается запись в апплете "Установка и удаление программ" на Панели управления, которая позволяет откатить произведенные патчером изменения.

-RL – Автоматическое удаление файла журнала после завершения работы утилиты.

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


BIN-patcher:

-PBIN1 - Патч системных библиотек UXTHEME.DLL, THEMEUI.DLL, THEMESERVICE.DLL, отключающий проверку цифровых подписей тем рабочего стола;

-PBIN3 - Патч системной библиотеки AUTHUI.DLL, отключающий ограничение размера файла BACKGROUNDDEFAULT.JPG в 256кб.;

-PBIN7 - Патч в DWM.EXE, включающий AeroGlass в Windows 7 Starter x86.

-PUNDO - Дополнительный ключ для предыдущих 5 ключей -PBINx, включающий режим отката изменений на ранее пропатченых ими файлах и возврата файлов к исходному состоянию.


Logon Screen Changer:

-WS [FILE] - Включает установку пользовательского изображения на экран входа пользователей в систему.
Дополнительный параметр FILE задает имя файла с пользовательским изображением, которое преобразуется в backgroundDefault.jpg.
Если параметр FILE не задан, а указан только сам ключ -WS, то в качестве исходного изображения используется фон рабочего стола текущего пользователя.
В качестве исходных изображений поддерживаются файлы форматов JPEG, BMP, TIFF, PNG, GIF.
Пример:

W7Patcher.exe -WS D:\MyImages\Image001.jpg
или
W7Patcher.exe -WS
-SZ <SIZE> - Задает пользовательский размер для файла backgroundDefault.jpg, например -SZ 1028x1024.
Если этот ключ не задан, то изображение создается с размерами с размерами, соответствующими текущему разрешению экрана.

-WR - Отмена всех созданных программой изменений и возврат к стандартным системным настройкам.

-WSREG <DIGIT> [Menu name] – регистрация утилиты в контекстном меню на графических типах файлов .BMP, .JPG, .JPEG, .PNG, .TIF, .TIFF для быстрой установки изображений этих типов как фоновых на экран входа пользователя в систему. Кроме того этот ключ также создает новый пункт в контекстном меню рабочего стола, при выборе которого происходит установка текущего изображения рабочего стола также и в фон экрана входа пользователя в систему.
В этом параметре цифрой 1 или 0 можно задать установку или удаления пунктов меню соответственно, а также задать свое название пункта меню вместо стандартного названия "Create Logon Background", устанавливаемого утилитой.
Примеры использования:

W7Patcher.exe -WSREG 1 "Поместить в фон экрана входа в систему" – добавление пункта в контекстное меню и установка своего названия.

W7Patcher.exe -WSREG 1 – добавление пункта в контекстное меню с названием по-умолчанию.

W7Patcher.exe -WSREG 0 – удаление пункта контекстного меню, ранее созданого утилитой.

Resources extractor:

-EE - извлечение RES-файлов из Restorator-патчеров. Предназначение – быстрое преобразование готового пакета оформления, созданного на Restorator-патчерах в RES-формат.
Пример использования:

W7Patcher.exe -EE -S .\resources -D .\openresdir
Здесь через ключ -S задается папка с деревом Restorator-патчеров, ключом -D задается папка, в которой будет сформировано точно такое же дерево вложенных папок, но с RES-файлами.
-EEA - извлечение ресурсов из дерева исполняемых файлов в такое же дерево RES-файлов. Предназначение – быстрое извлечение всех ресурсов из большого количества файлов с сохранением структуры папок для последующего создания на базе оригинальных ресурсов пакета оформления путем удаления лишнего и редактирования существующего .
Пример использования:

W7Patcher.exe -EEA -S .\exedllfilesdir -D .\
Здесь через ключ -S задается папка с исходным деревом исполняемых файлов, ключом -D задается папка, в которой будет сформировано точно такое же дерево вложенных папок, но с RES-файлами.
-LS <LangID> - определяет языковой идентификатор, ресурсы с которым будут извлечены ключами -EE и -EEA. Если этот параметр не задан, то будут извлечены ресурсы со всеми языковыми идентификаторами.

-EMUI <MUI_NAME> [NEW_MUI_NAME] - Извлечение MUI-пакета из указанного дерева папок, например можно извлечь MUI-пакет для заданного языка из всей системы. Также во время извлечения можно переименовать извлекаемые папки (например, извлекаем en-US и переименовываем en-US в ru-RU).
Предназначение – для любителей создавать самопальные MUI-пакеты локализации путем выдирания и перевода базового встроенного MUI.
Пример использования:

W7Patcher.exe -EMUI en-US -S C:\ -D .\

W7Patcher.exe -EMUI en-US ru-RU -S C:\ -D .\

Здесь ключом -S задается папка с исходным деревом, ключом -D задается папка, в которой будет сформировано дерево MUI-папок для заданного языка.

Resources information extractor:

-PP - извлечение информации обо всех ресурсах в RES-файлах в заданной папке.
Предназначение – быстрый анализ содержимого RES-файлов без открывания каждого файла в редакторе, для выявления ошибок типа «не тот язык задан для ресурса» или «не то имя…». Вся информация о содержимом RES-файлов записывается в журнал работы утилиты.
Пример использования:

W7Patcher.exe -PP -S .\openresdir
Здесь ключом -S задается папка с деревом RES-файлов.
-S1033, -S1049, -S1058 - дополнительные ключи для -PP. Они предназначены для пропуска занесения в журнал ресурсов с языками English, Russian и Ukrainian соответственно, что удобно для поиска ресурсов с «не правильными языками» при отладке пакета оформления.
Пример использования:

W7Patcher.exe -PP -S1033 -S1049 -S .\openresdir
Resources language IDs convertor:

-LN <LangID> - конвертирование языковых идентификаторов ресурсов в RES-файлах в заданной папке. Здесь <LangID> - определяет новый языковой идентификатор.
Предназначение – быстрое преобразование готового пакета оформления, в другую языковую локаль, либо быстрого пакетного исправления ошибок в пакете, если для некоторых ресурсов заданы неправильные идентификаторы языка.
Например, типичная ошибка начинающих ресурсорисователей, когда в RES-файлах, предназначенных для русских MUI-файлов, идентификаторы языка отличны от 1049 (0x419), от чего в MUI-файле создается параллельно с оригинальным ресурсом с языком 1049 еще один ресурс с тем же ID-ом и другим языком, и при этом в системе отображается оригинальный русский ресурс, а не ново добавленный при пропатчивании.

-LO <LangID> - определяет исходный языковой идентификатор, ресурсы с которым преобразуются ключом -LN <LangID>. Если этот параметр не задан, то замена языковых идентификаторов происходит для всех ресурсов, а не только для определяемых этим ключом.

Примеры использования:

W7Patcher.exe -LN 1049 -S .\\openresdir

W7Patcher.exe -LN 1049 -LO 1033 -S .\\openresdir

W7Patcher.exe -LN 0x419 -LO 0x409 -S .\\openresdir

MUI builder:

-MM <Body.dll> - Сборка пакета MUI-файлов из дерева RES-файлов и тела-заголовка (для тех, кто в танке: MUI-файл состоит только из PE-заголовка и секции ресурсов).
Предназначение – RES-файлы могут быть пакетно сконвертированы и отредактированы другими ключами из этой группы, а затем из них можно быстро собрать MUI-пакет. Если вы не понимаете, зачем это, то забудьте и дальше не читайте. Это специфическая заказная функция.
Пример использования:

W7Patcher.exe -MM .\Body.dll -S .\openresdir -D .\
Здесь ключом -MM .\Body.dll включается эта функция, а также задается имя существующего файла тела-заголовка, ключом -S задается папка с исходным деревом RES-файлов, ключом -D задается папка, в которой будет сформировано дерево папок с MUI-файлами.

Files remover:

-DEL <CFG> - пакетное удаление файлов из живой системы или дистрибутива по подготовленному списку.

Формат содержимого файла dellist.cfg такой (живой пример):
Код: Выделить весь код
[DeleteList]
\Windows\Web\Wallpaper\Architecture
\Windows\Cursors\wait_rm.cur
\Windows\System32\es-ES
"\Program Files\Common Files\microsoft shared\ink\ar-SA"
"\Program Files\Common Files\microsoft shared\ink\da-DK\tipresx.dll.mui"
\Windows\Globalization\MCT\MCT-RU\
\Windows\Boot\PCAT\zh-TW\bootmgr.exe.mui
Здесь перечисляются пути к конкретным файлам или папкам. Все пути относительные, если на живой системе, то относительно корневого каталога, если в дистрибутиве, то относительно корня, задаваемого стандартным ключом -D <DIR>. Если путь к файлу или папке содержит пробел, то его необходимо заключить в кавычки.
Если удаляете папку, то она удаляется со всем содержимым без вопросов и предупреждений, и безвозвратно.
При удалении на живой системе, заблокированные системой файлы удаляются после перезагрузки.
Пример использования:

W7Patcher.exe -DEL .\\dellist.cfg
Дополнительные ключи:

-HELP - Вывод в журнал справки о ключах командной строки и завершение работы утилиты.

-LOG <FILE> - установка произвольного имени и месторасположения создаваемого утилитой журнала работы.


Примечание:
Одновременное использование ключей -P, -PBR, -C, -V, -U, производящих обработку файлов системы, налагает такие зависимости:
  • Ключи -P <DIR>, -PBR <DIR>, -C <DIR> можно применять одновременно в одной командной строке. В этом случае обработка системы производится в таком порядке: копирование файлов (ключ -C), пропатчивание файлов ресурсами из RES-файов (ключ -P), пропатчивание файлов ресурсами из RES-файов (ключ -PBR).
  • Ключ -V <DIR> можно применять только совместно с необходимыми ему ключами -P и -PBR <DIR>.
  • Ключ -U можно применять только сам по себе.


Структура набора патчей:
читать дальше »
W7Patcher работает с ресурсами, выполненными в виде RES-файов <name.extension>.res.

Примеры:
user32.dll.res
shell32.dll.mui.res
explorer.exe.res



Папка, задаваемая ключами -P, -PBR, -C, -V должна иметь одинаковую структуру с папкой назначения, задаваемой ключом -D или с системным диском, на который установлена ОС (если цель пропатчивания - живая система).

Таким образом, если вы хотите на смонтированном WIM-образе пропатчить файл <WIM_mount_DIR>\Windows\System32\shell32.dll, то новые ресурсы для него должны быть в файле <Patches_DIR>\Windows\System32\shell32.dll.res

Например, если набор ресурсов у вас расположен в папке D:\WORK\MyPatches, а WIM-образ смонтирован в папку D:\WORK\WimMountPoint, то патчер будет иметь имя D:\WORK\MyPatches\Windows\System32\shell32.dll.res, а целевой файл для него - D:\WORK\WimMountPoint\Windows\System32\shell32.dll

Для такого случая командная строка для пропатчивания WIM-а будет выглядеть так:
W7Patcher.exe -P D:\WORK\MyPatches -D D:\WORK\WimMountPoint

Командная строка для пропатчивания живой системы этим же набором патчей будет выглядеть так:
W7Patcher.exe -P D:\WORK\MyPatches


Точки восстановления:
читать дальше »
В процессе своей работы утилита создает точки восстановления, для возможности отмены произведенных модификаций файлов.
Папки с точками восстановления размещаются в папке \W7P_Backups, которая создаются либо в корне WIM-образа (то есть там, куда указывает ключ -D), либо в корне системного диска, если производится установка пакета оформления на живой системе.
Имя самой подпапки с точкой восстановления можно либо задать вручную с помощью ключа -BN, либо оно будет сформировано автоматически из текущей даты и времени, например \W7P_Backups\2009-09-26_16-20-14\....

В каждой точке восстановления утилита формирует многоуровневую структуру папок, идентичную структуре папок системного диска ОС, в которых располагаются резервные копии пропатченых или замененных утилитой файлов.
Пример:
Если мы патчим системный файл \Windows\System32\shell32.dll, то в точке восстановления его резервная копия будет расположена в
\W7P_Backups\DATE_TIME\Windows\System32\shell32.dll,
где DATE_TIME - текущие дата и время.
или
\W7P_Backups\NAME\Windows\System32\shell32.dll,
где NAME – имя, вручную заданое с помощью ключа -BN
После нескольких запусков утилиты с ключом -BN и тем же самым именем, такая точка не заменяется целиком, а дополняется теми файлами, которых в точке еще не существует от предыдущих запусков утилиты. Такой режим лучше всего подходит для использования в пакетах оформления, распространяемых среди конечных пользователей.

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

После восстановления системы из точки с помощью ключа -U, она будет удалена автоматически.


Пропатчивание графических ресурсов с контролем версий:
читать дальше »

Кроме стандартного механизма пропатчивания файлов графическими ресурсами с помощью ключей -P <DIR> и -PBR <DIR> предусмотрено также пропатчивание файлов с контролем версий целевых пропатчиваемых файлов с помощью комбинации ключей -V <DIR> и -P <DIR>/-PBR <DIR>.
Такой механизм наиболее полезен в случае необходимости повторного перепропатчивания системных файлов, которые были обновлены службой Windows Update.

При запуске патчера с ключами -V <DIR> -P <DIR> -PBR <DIR> не происходит повторного перепропатчивания всех файлов, для которых есть патчеры в дереве, указанном ключом -P <DIR> или -PBR <DIR>, а пропатчиваются только те файлы, версии которых изменились, по сравнению с файлами из Backup-а, указанного в ключе -V <DIR>. При таком пропатчивании оригинал обновленного системного файла копируется в соответствующую папку Backup-а, заменяя там этот же существующий файл но более старой версии.
В случае если в Backup-е не найден ранее сохраненный там оригинал целевого файла (например вы добавили новый патчер в дерево), то пропатчивание происходит обычным образом, как в обычном режиме с ключем -P <DIR>.


Копирование набора файлов:
читать дальше »

Если происходит не добавление новых файлов в систему, а замена системных файлов одноименными файлами из пользовательского набора, то происходит автоматическая корректировка прав доступа на заменяемые системные файлы, так как в ОС Windows 7 для большинства системных исполняемых EXE-файлов, драйверов и DLL-библиотек полный доступ имеет только системная учетная запись TrustedInstaller, которая также назначена владельцем этих файлов, а остальные группы пользователей по умолчанию имеют доступ только на чтение и выполнение файлов.

Копирование набора файлов производится аналогично восстановлению файлов из точки восстановления, созданной утилитой, например:
W7Patcher.exe -R -C <Х:\ПАПКА_С_НАБОРОМ ФАЙЛОВ>
, что означает копирование дерева файлов в локальную живую систему с последующей автоматической перезагрузкой

Структура набора файлов должна иметь такой же вид, как и структура набора патчей или точки восстановления. Если в пользовательском наборе файлов создана собственная дополнительная структура подпапок, изначально отсутствующая в целевой ОС, в которую производится копирование, то в целевой системе она будет создана автоматически.


Windows 7 Logon Screen Changer
читать дальше »

Функционал Windows 7 Logon Screen Changer предназначен для автоматической установки фонового изображения для экрана входа пользователей в систему в ОС Windows 7.

Основные функции:
  • Генерация из заданного пользователем изображения файла backgroundDefault.jpg с размерами, соответствующими текущему разрешению экрана, или заданными пользователем вручную, и размещение его в системной папке %SystemRoot%\System32\oobe\info\backgrounds.
  • Снятие накладываемого системой ограничения на размер файла backgroundDefault.jpg в 256кб.
  • Включение показа на экране входа в систему пользовательского изображения из файла backgroundDefault.jpg вместо одного из изображений из библиотеки imageres.dll.

Все эти действия выполняются путем запуска утилиты с соответствующими ключами командной строки, описание которых можно найти выше, в разделе «Ключи командной строки»


Ведение файла журнала:
читать дальше »

Во время своей работы W7Patcher ведет файл журнала W7Patcher.log, куда регистрируются производимые действия.
Файл журнала создается в том же каталоге, в котором расположен сам патчер.

Кроме того используя ключ -LOG можно задать свое имя и путь для файла журнала.


Запуск утилиты на x64-системах:
читать дальше »

При использовании утилиты в универсальных пакетах оформления, предназначенных для установки как на x86-, так и на x64-системах нет необходимости в написании какого-то "хитрого" скрипта, автоматически определяющего разрядность системы, и соответственно запускающего x86- или x64-версию утилиты

Вместо этого достаточно просто положить в пакет оформления рядом обе версии утилиты, но запускать только x86-версию. Причем в составе имени x86-версии должны быть символы _x86, а в x64-версии - соответственно _x64, например так, как именуется утилита в стандартном дистрибутиве в шапке этой темы.
При запуске x86-утилиты на x64-системе, x86-утилита модифицирует свою командную строку, заменяя все сочетания символов _x86 на _x64 и сама запускает x64-версию с этой модифицированой командной строкой.
Пример:
Если мы на x64-системе запускаем:

W7Patcher_x86.exe -C .\\CopyFiles_x86 -P \\ResFiles

То реально будет запущена:

W7Patcher_x64.exe -C .\\CopyFiles_x64 -P \\ResFiles
Таким образом, в данном примере мы можем иметь два набора копируемых файлов, специфичных для каждой из платформ, но автоматически использовать набор, соответствующий платформе.

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



Изменения в текущей версии:
читать дальше »

Версия 19.3.19.1
  1. Небольшой фикс патчера проверки цифровых подписей тем рабочего стола (-PBIN1). Для Windows 10 теперь патчатся только файлы themeui.dll и uxinit.dll.
    В Windows 10 правленый файл uxtheme.dll со слетевшей цифровой подписью приводит к падению с ошибкой 0xC0000428 консоли mmc.exe, если её (а точнее её оснастки) запускать с административными привилегиями при нормально включённом UAC.

Версия 18.12.25.3
  1. Расширен функционал патча -PBIN1 для Windows 10. Теперь в "Персонализации" при переключении темы рабочего стола полностью переключаются все элементы визуального стиля,
    в том числе и метрики прописанные в связанном с темой визуальном стиле, такие как размеры шрифтов, заголовков окон, линеек прокрутки.
  2. Доработан функционал очистки системного кэша шрифтов, графики, иконок. Теперь это работает не только на "живой системе", но и в оффлайне, то есть когда задан ключ -D.
    Например, будет корректно почищен после обработки подключенный на отдельную букву виртуальный жесткий диск от виртуальной машины.

Версия 18.11.8.1
  1. Фикс очистки системных кэшев графики и шрифтов на Win10.

Версия 13.12.11.1
  1. Исправлен баг с ключом -WSREG.

Версия 13.11.26.1
  1. Добавлена поддержка authui.dll версий 6.1.7601.22472 и 6.1.7601.18276.

Версия 13.5.20.1
  1. Добавлена поддержка authui.dll версий 6.1.7601.22269 и 6.1.7601.18103.
  2. Добавлена поддержка работы с UAC-ом и его отключения.
  3. Добавлены PreUninst, PostUninst, -LS, -F, обработка ключей PBIN в проходе VerCheck....

Версия 11.11.27.1
  1. Добавлена поддержка authui.dll версии 6.1.7601.21721.
  2. Лень побеждена и в результате этого добавлена расшифровка системных кодов ошибок, выводимых в журнал.
  3. Для файла ver.ini добавлена обработка четырех новых параметров Readme, HelpLink, URLUpdateInfo, URLInfoAbout.
  4. Разнообразные мелкие оптимизации.


Более старая история находится в текстовом файле во вложении.
Это сообщение посчитали полезным следующие участники:
Показать/скрыть список поблагодаривших

Отправлено: 22:31, 28-09-2009

 

Аватара для Smarty

In reserve...


Contributor


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

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


geepnozeex,
Цитата geepnozeex:
делаем вывод что как раз только winsxs и нужно патчить »
Флаг вам в руки!
Цитата geepnozeex:
а теперь с новой версией патчера это невозможно »
А предыдущую уже выкинули?
Цитата geepnozeex:
а что с обновлениями? - у меня пропатчены все файлы в winsxs и winsxs\backup и обновления мне не страшны ,
я проверял на системе только с патчами без обнов.»
А вы обновите!
И как, по вашему, быть в такой ситуации:
у меня в папке winsxs (х86) 4 файла shell32.dll (один в backup).
Версии файлов совпадают только в system32, backup и, соответственно,
в C:\Windows\winsxs\x86_microsoft-windows-shell32_31bf3856ad364e35_6.1.7600.16385_none_6bff8101734f8330.
Далее...
В system32 файл пропатчен, в других папках - нет. Оформление установлено.
Так где по вашему патчить-то? Попробуйте только папку winsxs и посмотрите, что будет.
Вопрос про хардлинки тоже интересен... но патчер работает...

Отправлено: 12:44, 03-05-2010 | #191



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

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


Ветеран


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

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


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

но !- недавно вышло обновление kb980408 которое содержит новый файл shell32.dll ,в связи с этим несколько поменялась локация файлов shell32.dll и появилось ещё 2 локации.
тут уж как не патчи до этого обновления ,всё равно картинка слетает в shell32.dll ,но это первый раз на моей памяти ,что бы добавляли новую версию файла.
подремонтировал я расположение папок для патча и вновь мне ничего не страшно.

Отправлено: 13:29, 03-05-2010 | #192


Аватара для Smarty

In reserve...


Contributor


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

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


geepnozeex, видно, тяжёлый случай...
Вместо того, чтобы так извращаться, не проще ли и не лучше ли
запустить скрипт такого содержания:
Код: Выделить весь код
W7PATCHER.EXE -V [путь к папке с бэкапом] -P [путь к папке с патчерами] -R
Патчер сам сравнит версии файлов в системе и в бэкапе!
Если в системе появятся после обновления файлы новее, чем в бэкапе, то патчер опять же сам пропатчит
обновленные файлы и заменит оригиналы в папке бэкапа на новые.

Может ваше призвание - мазохизм, но адекватным людям голову не морочайте!
Всё уже придумано за вас и для вас!

ЗЫ. Пропатчьте ещё дистрибутив, а то вдруг там файлы обновятся!
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:45, 03-05-2010 | #193


Ветеран


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

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


в системе не могут быть файлы новее чем в бэкапе - новая версия файла попадает в оба места(пример kb980408) ,иначе ,что система будет восстанавливаться из старых файлов?

smarty - насчёт мазохизма - эту свою дурь оставь при себе.
главное ,что мой принцип работы с патчером даёт нужные результаты.

Отправлено: 15:09, 03-05-2010 | #194


Extractor


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

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


Цитата Boa Soft:
Так что, не совсем понятно "кто есть ху". Есть ли инструмент, для просмотра типа файла - чтобы отличить хардлинк от файла. »
Готовых програм я таких не припомню... Вроде FAR что-то такое показывал, но не факт...

В интернете встречаются исходники и примеры для такого, но там ребята реализуют это в драйверах, и соответственно на Native API только. Только на Win32 API это, как я понял, реализовать проблематично весьма.

Цитата Boa Soft:
И, интересный вопрос. Вот, мы пытаемся патчить файл, на который установлен хардлинк. Изменится ли содержимое файлов по хардлинкам? И наоборот мы пытаемся патчить файл по хардлинку, изменится ли при этом файл, на который он указывает. »
Нет. Создается копия.
Сама технология пропатчивания ресурсов в любой реализации (хоть у Майкрософта, хоть у сторонних редакторов) выглядит таким образом, что создается копия оригинала, в которой все секции кроме ресурсной копируются без изменений, потом собирается новая секция ресурсов из не изменяемых ресурсов оригинала, и новых изменяемых или добавляемых нами. После этого в конец файла дописываются те секции, которые идут после ресурсной (как правило, это реалокейшены), и корректируется РЕ-заголовок.

Что касается хардлинков, то оно у Майкрософта на уровне файловой системы так интересно реализовано, что если например у файла есть один хардлинк, и мы удаляем файл по оригинальному имени (соответственно удаляется первичная файловая запись из каталога), то на тело файла остается только ссылка из хардлинка, и при этом сам хардлинк не преобразуетсе в первичную файловую запись.

-------
Мои проекты:
Системные: Fake-Setup Advanced | MSSTMake | UserMake
Оформление: WinstyleMonitor | Winstyle - Установка на "живую" систему | Windows 7 Universal Patcher | Панель персонализации для Windows 7 Starter & Home Basic
Уголок юного археолога: Внутренности Установщика WinXP


Последний раз редактировалось Mr dUSHA, 03-05-2010 в 17:51.


Отправлено: 15:14, 03-05-2010 | #195


Аватара для Smarty

In reserve...


Contributor


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

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


geepnozeex,
Цитата geepnozeex:
эту свою дурь оставь при себе »
Это ты оставь при себе свои принципы работы, от котрых возникают твои вопросы!
Уже все насмотрелись и начитались!
Где у остальных проблем не возникает - у тебя постоянно находятся!

Отправлено: 15:21, 03-05-2010 | #196


Ветеран


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

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


по поводу хардлинков - эксперименты показывают что их нет,а есть физически существующие файлы в system32 и winsxs.
1) патчим только shell32.dll в system32 - после установки смотрим ресторатором shell32.dll в winsxs - он не пропатчен.
2) патчим только shell32.dll в winsxs - после установки смотрим shell32.dll в system32 - он не пропатчен,пропатчен только в winsxs.
очевидно что линков нет.
без патча winsxs файлы восстанавливаютя после sfc /scannow ,полюбому они существуют в двух местах как минимум.

Последний раз редактировалось geepnozeex, 10-05-2010 в 08:18.


Отправлено: 18:13, 03-05-2010 | #197


Extractor


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

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


Цитата geepnozeex:
по поводу хардлинков - эксперименты показывают что их нет,а есть физически существующие файлы в system32 и winsxs. »
Особенно мне понравилось, что Майкрософт говорит, что линки есть, а ты говоришь, что их нет.
Эксперименты без знания теории - это "пальцем в небо".
shell32.dll из твого примера нельзя непосредственно редактировать на живой системе, поскольку он заблокирован. Оригинал перемещается в бэкап, создаваемый утилитой, при пропатчивании, а в Систем32 создается уже патченая копия его. Так что после пропатчивания на одно реальное тело оригинального фала указывают две ссылки - из бэкапа утилиты и из winsxs. А то, что получается в Систем32 - это уже совсем другой файл.
Smarty тебе выше уже написал, что все придумано до тебя.

-------
Мои проекты:
Системные: Fake-Setup Advanced | MSSTMake | UserMake
Оформление: WinstyleMonitor | Winstyle - Установка на "живую" систему | Windows 7 Universal Patcher | Панель персонализации для Windows 7 Starter & Home Basic
Уголок юного археолога: Внутренности Установщика WinXP


Отправлено: 18:30, 03-05-2010 | #198


Аватара для AlexS94

Старожил


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

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


Mr dUSHA, есть предложение создать новый ключ для патчера "-WS" который будет отвечать за пропатчивание или не пропатчивание папки WinSxS) Так не будет таких проблем, как у geepnozeex, и каждый сможет выбрать патчить или нет))
Я раньше патчил winsxs, был "ламером", просто не въехал в назначение ключа -V, плюс патчил систему после обновления))
P.S. Mr dUSHA не встречались с такой проблемой? http://forum.oszone.net/post-1404851-1133.html

-------
Windows 7 GreyStone


Последний раз редактировалось AlexS94, 04-05-2010 в 23:25.


Отправлено: 22:20, 03-05-2010 | #199


Аватара для 2poisonS

Старожил


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

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


Один момент, если создать патчер в Restorator с дальнейшем пропатчиванием с помощью утилиты. На версию файла это не как не отразиться? Т.е. версия файла останется прежней?

-------
A signature... :|


Отправлено: 22:06, 15-05-2010 | #200



Компьютерный форум OSzone.net » Изменение внешнего вида Windows » Оформление Windows 10 / 8 / 7 / Vista » Программы - Windows 7 Universal Patcher

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Программы - uxTheme patcher - Windows Vista Malfatto Оформление Windows 10 / 8 / 7 / Vista 17 24-11-2008 12:43
Система - Universal Windows Multi Boot Disk yurfed Программное обеспечение Windows 13 05-05-2008 12:49
Resource Kit ded moroz Microsoft Windows NT/2000/2003 15 30-11-2003 03:52
Resource Editor Guest Программирование и базы данных 1 26-02-2003 16:01




 
Переход