Показать полную графическую версию : Внутренности Установщика WinXP
Страниц :
1
2
3
4
5
[
6]
7
Compiller
09-09-2009, 10:35
Прочитал тему вроде не видел - предложение в setupapi.dll сделать патч чтобы кнопкой по умолчанию было "Да" при установке неподпсанных драйверов - тогда можно хотя бы ввод нажимать или пробел, а не щёлкать мышью или Tab или стрелками.
Тут ещё кто-то спрашивал про замену файла чисто батником
MOVE %SYSTEMROOT%\SYSTEM32\SFC_OS.DLL %TEMP%\SFC_OS.DLL.OLD
MOVE %SYSTEMROOT%\SYSTEM32\SFCFILES.DLL %TEMP%\SFCFILES.DLL.OLD
COPY /Y SFC_OS.DLL %SYSTEMROOT%\SYSTEM32\DLLCACHE
COPY /Y SFCFILES.DLL %SYSTEMROOT%\SYSTEM32\DLLCACHE
COPY /Y SFC_OS.DLL %SYSTEMROOT%\SYSTEM32
COPY /Y SFCFILES.DLL %SYSTEMROOT%\SYSTEM32
Ну а удалить файлы с двойным расширением можно после перезагрузки.
Mr dUSHA
11-09-2009, 23:01
Прочитал тему вроде не видел - предложение в setupapi.dll сделать патч чтобы кнопкой по умолчанию было "Да" при установке неподписанных драйверов - тогда можно хотя бы ввод нажимать или пробел, а не щёлкать мышью или Tab или стрелками. »
Зачем все так сложно то? :) Проще патчами из шапки отключить проверку подписей, чем еще потом что-то нажимать при установке неподписанных драйверов.
Ура! Мне помогло! Я уже думал никогда от этого окна не избавиться -
Welcome to the Hardware Setup Wizard ГгY :)
Патчил setupapi.dll v5.1.2600.5512
0001CD29: 74 EB
0001D509: 74 EB
00021B7F: 74 90
00021B80: 0A 90
00021B8E: 75 EB
000456C7: 74 EB
и так же syssetup.dll v5.1.2600.5512
00033E00: 39 85
00033E01: 5D DB
00033E02: 08 90
00033B29: 73 EB
0005AB31: 6A EB
0005AB32: 46 0D
Причём во втором уже даже ресурсы были патченые, оба файла после обработки nLite 1.4.9.1.
И modifype file -c до и после применялось. Все адреса реальные, что странно даже после ResHacker.
Отлично! Установил nLite - всё работает! Значит ResHacker не задевает секцию кода по адресам,
чего я опасался :)
Отличная тема! Минуты три искал её! Надо бы это в раздел статей вынести!?
Сейчас займусь WinXP 64-bit SP1, посмотрю что актуально и работает там.
Если патчи устарели обновите пожалуйста!?
Я ещё один загрузочный патч где-то вычитал, тоже помогло!
SETUPLDR.BIN:
2060: 74 EB 03 1A
иначе NTLDR missing or corrupt из-за проверки CRC
Mr dUSHA
12-03-2010, 13:23
Я ещё один загрузочный патч где-то вычитал, тоже помогло!
SETUPLDR.BIN:
2060: 74 EB 03 1A
иначе NTLDR missing or corrupt из-за проверки CRC »
http://forum.oszone.net/thread-110577.html
А что делать с HHCtrl.ocx и whhctrl.ocx, при установке выдаёт предупреждение "некоректного копирования",
делал modifype HHCtrl.ocx -C не помогло! Или это надо в SIF подредактировать, я не вкурсе?
Кстати, нужно ли было делать modifype syssetup.dll -C после изменения ресурсов, или он итак не проверяется уже?
И вообще если я делаю сам патчи uxtheme.dll, setuapi.dll, sfc_os.dll нужна ли эта коррекция?
modifype syssetup.dll -C после изменения ресурсов »нет, безполезно, эта коррекция делается самим модификатором ресурсов
А что делать с HHCtrl.ocx »
? :(
Изменил logonui.exe, taskmgr.exe, shutdown.exe, все (x64) опять началось, крики о том,
что файл неправильно скопирован! :(
syssetup.dll + setupapi.dll + sfc_os.dll у меня при этом пропатченные по мануалу:
Patches_5.2.3790.3959_for_WinXP_x64.7z
Что делать, хоть намекните! Я уж точно покрайней мере taskmgr.exe ковырял в x86,
и это даже без патчей работало. А файл textsetup.sif нельзя подредактировать, что-то вроде на эту тему было?
Хотя по всему похоже на sfc_os.dll некорректный... ?
Я дурак удалил nLite файлы, но logonui.exe всётаки остался, я сравнил хеш - точно такой же,
как из оригинального дистра, а в чём тогда трабла?
logonui.exe v6.0.3790.3959
Вообщем у меня SP2 (x64), с чем сражаюсь в данный момент.
А файл textsetup.sif нельзя подредактировать »почему?
что-то вроде на эту тему было? »вы с layout.inf не путаете?
Mr dUSHA
07-04-2010, 11:40
Изменил logonui.exe, taskmgr.exe, shutdown.exe, все (x64) опять началось, крики о том,
что файл неправильно скопирован! »
Если самостоятельно редактировали их шеснадцатиричным редактором, то после этого необходимо еще их через modifype -C прогнать, поскольку установщик ОСи после копирования каждого файла из дистрибутива на винт пересчитывает его реальную КС и сверяет с той, что записана в РЕ-заголовке. И если записанная и реальная КС не совпадают, то он и выдает такие крики, думая что файл просто некорректно скопирован из поврежденного дистрибутива.
Да тут дело ясное - "поскольку установщик ОСи после копирования каждого файла из дистрибутива на винт пересчитывает его реальную КС", я просто засуетился в панике, сейчас начинаю вспоминать кое что...
Во-первых я всётаки не редактировал в hex, а взял готовые либы из 7z, постоянно забываю об этом,
так как у меня ранньше версия SP1 с адресами не совпадала, но сейчас я добыл SP2 и надо будет
самому попробовать хакнуть... (хотя сомнений не должно быть, что SP2 файлы вдруг у меня будут иными)
Но я вроде бы главное вспомнил, помоему я раньше напрочь убивал проверку в sfc_os.dll какими-то пару байтами,
но я не знаю здесь именно тот хак в мануале или может быть менее агрессивный, надо будет вспомнить и сравнить.
Mr dUSHA, спсибо что откликнулся, просто когда люди не пишут на форуме у меня
начинается паника, что никого вокруг нету и дело стало неизвестно на сколько. Вообщем нервы. )))
(x64 и без того столько времени отожрал, после того как с x86 уже давно всё стало ясно)
:)
Mr dUSHA
07-04-2010, 19:07
x64 и без того столько времени отожрал, после того как с x86 уже давно всё стало ясно »
С x64 все абсолютно аналогично.
Единственный важный момент, что в x64-дистрибутиве содержатся по две копии большинства системных библиотек, одна из которых нормальная 64-битная, и имеет обычное имя типа syssetup.dl_, а вторая копия - 32-битная, имя дистрибутивного файла несколько отличается (я на память не скажу, как они именуются там примерно..., но в именах присутствуют буквы wow...).
В нормальной установке и работе ОСи используются 64-битные модули, и именно их нужно патчить, но за компанию можно и их 32-битных собратьев.
Только не запутайтесь в 64-битной ОСи с именами системных папок, поскольку 64-битная ОСь для запущеных в ней 32-битных программ вместо стандартной системной System32 (в которой лежат 64-битные модули) не заметно для вас подсовывает папку SysWOW64 с 32-битными близнецами модулей.
Но я вроде бы главное вспомнил, помоему я раньше напрочь убивал проверку в sfc_os.dll какими-то пару байтами, »
Вам это нужно:
sfc_os.dll
- Разрешение возможности использования ключа реестра HKLM,SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon,SfcDisable со значением 0xFFFFFF9D для возможности полного отключения SFC.
syssetup.dll
- Отключение запуска системы SFC(WFP) для принудительного сканирования всех защищенных системных файлов на Т-8 графического этапа установки (экономия времени на установку ОС - 5-10 минут).»
В прилагаемых к архивам с патчеными файлами ТХТ-шках все кратко описано.
Я проверил setupapi.dll v5.2.3790.4511 из хотфикс архива, на "5.2.3790.3959" nLite сборке, работает!
Всё остальное тоже проверенно! :)
Не забывайте юзать маленький свитчер modifype syssetup.dll -c.
И не забывайте паковать setupapi.dll как makecab wsetupapi.dll, там где это надо.
Mr dUSHA
17-03-2011, 18:55
что используется целых 3 фикса »
Все 3 фикса для разных целей, и уж никак не для того, чтоб ошибки в журнал не выводились. Посидите, подумайте и разберитесь в их предназначении.
вместо того, чтобы использовать всего 1 фикс для setupapi.dll (вот этот»
Это не фикс, а нечто в стиле "я крутой кулхацкер, щас че-нить пропатчу, первое что под руку попадется! в логике кода разбираться не буду принципиально, а только чтоб ошибки не выводились!".
Не берите идей у нЛайта, а думайте своей головой.
Делая такое для какого-то там никому ненужного ДЕЛ-аддона, вы убиваете на корну механизмы ОСи предназначенные, не только для проверки цифровых подписей, а для проверки целостности файлов.
Повреждения файлов могут быть вызваны не только теми же ДЕЛ-аддонами, а еще и проблемами с винчестером или модулями памяти. Таким образом тотальное отключение всего подряд превращает нормальную ОСь. вовремя сообщающую пользователю об обнаруженных ошибках в натуральную г****-сборку, тихо глючащую на ровном месте.
Получается всё то же + дополнительно нет отзванивания в setupapi.log строчек вида: »
Всего того же никак не получается даже приблизительно.
нельзя ли для патчера Fake-Setup-Advanced добавить обработку syssetup.dll и setupapi.dll версии 5.1.2600.2180 (угу, SP2; угу, для динозавров)? »
Нет. Поддержка SP2 была давно удалена из принципиальных соображений. Я не верю в бредовые сказки, типа: "SP2 быстрее и стабильнее SP3..." и т.д.
Вот набор (адреса) оригинальных патчей »
Спасибо. Адреса у меня в архивах и так есть, поскольку я эти патчи и придумал.
Mr dUSHA
18-03-2011, 00:03
Мож сначала проверишь, а потом будешь сыпать голословными утверждениями? Или укажи то, чего не дает приведенный мной фикс из того, что есть в оригинальных 3-х фиксах. »
Не дает системе писать в лог реальную ситуацию, например то, что драйвера не подписаны.
Не дает показывать окно о неподписаности драйвера, если политика 1, и соответственно блокировать установку, если политика 2.
Мой подход - неразрушающая модификация и корректировка только конкретно того, что нужно, без последствий на других связаных механизмах системы. В твоем случае отключается комплексно всё.
А касаемо твоего скилла: я здесь уже не раз видел комменты, гласящие о том, что твои фиксы не работают так, как надо »
Здесь – это где? Случайно не в ветке ДЕЛ-аддонов?
тупо организует прыжок через функцию pSetupWriteLogEntry (кто-то говорил выше: "и уж никак не для того, чтоб ошибки в журнал не выводились") и присваивание 1 в определенный адрес из-за ненулевого кода »
Вот и проверь теперь, зачем этот флаг.
А как же встроенный в syssetup.dll фикс отключения защиты файла syssetup.inf? Это ведь сделано тобой именно для аддонов удаления. »
Сделано раньше и не для него, а для себя. Я очень давно использую правленый syssetup.inf, и таких косяков, как в аддонах удаления, никогда не наблюдал. Проблема именно в самих ДЕЛ-аддонах, а не в некорректности патча. Там какие-то непонятные нестыковки, исследовать которые мне абсолютно не интересно.
Кстати, этот фикс, конечно, позволяет отрубить проверку этого файла на T-39 (гы, путем отмены проверки целой кучи каталогов, - это интересно смотрится в свете твоих слов выше) »
Смотри внимательней. В том месте происходит проверка списка ИНФ-файлов. Список состоит аж из одного сабжевого syssetup.inf.
но фишка в том, что правленый syssetup.inf вызывает на работающей ОС выскакивание окошка WFP при запуске любого (хотя мож только установки дров) инсталлятора с любого устройства, использующего этот файл как промежуточный для своей установки; »
Реальный подробный пример в студию!
(Во всяком случае на время установки ОС, потом можно и вернуть оригинальную dll, - во-всяком случае, все фиксы той же syssetup.dll нужны только на время установки ОС, потом логичнее было бы вернуть оригинальный файл в систему, чего нигде не делается почему-то). »
Это ты просто на ДЕЛ-аддонах зациклился. Если FSA используется по прямому назначению, как установщик, то этого файла на диске и не модифицирует, а делает патчи в памяти, которые действуют до конца ГУИ-этапа. Такчто восстанавливать ничего не требуется.
Mr dUSHA прошу выклады патч для файла sxs.dll версия 5.1.2600.5699 (xpsp_sp3_qfe.081023-1324) з WINDOWS XP SP3 платформа x86 (або готовый файл sxs.dll) чшоб можна було редактировати файл COMCTL32.DLL с папок I386\ASMS\6000\MSFT\WINDOWS\COMMON\CONTROLS и I386\ASMS\60\MSFT\WINDOWS\COMMON\CONTROLS
выклады патч для файла sxs.dll версия 5.1.2600.5699 (xpsp_sp3_qfe.081023-1324) з WINDOWS XP SP3 платформа x86 (або готовый файл sxs.dll) чшоб можна було редактировати файл COMCTL32.DLL с папок I386\ASMS\6000\MSFT\WINDOWS\COMMON\CONTROLS и I386\ASMS\60\MSFT\WINDOWS\COMMON\CONTROLS Служебные - [addon] Fake-Setup Advanced (http://forum.oszone.net/thread-119984.html)
Служебные - [addon] Fake-Setup Advanced »
Не могу пропаштить.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC