PDA

Показать полную графическую версию : Внутренности Установщика WinXP


Страниц : 1 [2] 3 4 5 6 7

Boa Soft
08-08-2008, 00:06
Oleg_II,

Оно самое. Я много много почепнул для себя у Кетайцев в области автодетекта хал для разных систем.

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

То, что я запостил - это код процедуры удаления неопорзнанных и нустановленных устройств и запус энумерации и обновления драйверов. Код - TurboDelphi, но, можно применить для любой версии длелфы (окромя 1 - оно под 3.11 и 16 бит)

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

Oleg_II
08-08-2008, 05:44
Boa Soft
Ну, до Дельфи мне тоже пока далеко, но код аккуратно сохранил в свои закрома, может когда-то пригодится. Спасибо!

Про мышей - дык с сиспрепом и так работает, если есть файл ответов и мини-установка, даже добавлять в критические устройства вроде и не надо :) Вот если сиспрепа нет, допустим, применить тот файлик, то на моих Леново выскочит окошко о начале мини-установки и все! дальше не пойдет, потому что нужно там на кнопке с Ok нажать... Или если тоже без сиспрепа и без рег-файла просто при загрузке системы: еслит там был пароль, то так на окошке логина и встанет - ни пароль ввести, ни даже перезагрузку сделать - мышь и клава мертвы... если же пароля не было, то в систему-то войдет, но потом начнется обнаружение новых устройств и тоже надо будет либо клавой, либо мышью воспользоваться, а они-то мертвы! :(

Я нашел решение для загружаемой системы - предварительно применяю другой рег-файл и несколько файликов из DRIVER.CAB и SP3.CAB добавляю в нужне места. Но это работает только при прямой загрузке системы (без процесса мини-установки), да и то только через минуту после полной загрузки, а до этого просто тупо на экран смотрю...

Кстати, только сейчас подумал: может можно как-то хакнуть NEWDEV.DLL, чтобы определение новых устройств не спрашивало подтверждения, а устанавливало все устройства подряд автоматически? Тогда, правда, и файлы драйверов, наверно, надо будет в папку INF складывать, потому что выбора откуда драйвера брать уже не будет? Или он из другой папки тоже будет брать, если ее путь будет в реестре уаказан?

Не глянете NEWDEV.DLL? :)

Boa Soft
09-08-2008, 14:13
Кстати, только сейчас подумал: может можно как-то хакнуть NEWDEV.DLL, чтобы определение новых устройств не спрашивало подтверждения, а устанавливало все устройства подряд автоматически? Тогда, правда, и файлы драйверов, наверно, надо будет в папку INF складывать, потому что выбора откуда драйвера брать уже не будет? Или он из другой папки тоже будет брать, если ее путь будет в реестре уаказан? »


Копать надо factory.exe. Она каим-то образом запрещает юзерский интерфейс при обновлении устройств. Об этом и в логах sysetup есть записи.

У меня тоже есть подобная проблема - у меня USB KVM, и, соответственно, подключая машины для ремонта приходится дожидатся определения мыши и клавиатуры. Но, если выскочит окно определения модуля подключения монитора, то ой. Курим бамбук и идем за PS/2 клавой. К сожалению, не удалось купить двустандартный KVM (PS2/USB).

Если на счет окон - могу кинуть код простенькой проги, которая тупо нажимает кноки далее и готово мастера оборудования. Но, это спасет только после логона.

Я нашел решение для загружаемой системы - предварительно применяю другой рег-файл и несколько файликов из DRIVER.CAB и SP3.CAB добавляю в нужне места. Но это работает только при прямой загрузке системы (без процесса мини-установки), да и то только через минуту после полной загрузки, а до этого просто тупо на экран смотрю... »

Не можете проделится? А то при установки с диска на KVM свиче иногда потом не работает PS/2 мыш и клава.

Вот если сиспрепа нет, допустим, применить тот файлик, то на моих Леново выскочит окошко о начале мини-установки и все! дальше не пойдет, потому что нужно там на кнопке с Ok нажать... »

Надо покопать файл ответов на предмет полной автоматизации сего дела.

Oleg_II
09-08-2008, 14:44
Boa Soft
Немножечко меня не поняли :) Если применить тот рег-файл, что на прошлой странице, то клон на другом компьютере начнет мини-установки даже без сиспрепа (ни его, ни файла ответов, ни даже папки сиспреп в корне не надо - начнется без этого). Но надо будет на вопросы отвечать, т.е. вводить информацию с клавиатуры и по кнопкам жмакать. Вот тут-то может поджидать засада - на некоторых компах не мышшь и клавиатура может бездействовать...

Если есть сиспреп и файл ответов, то все проиходит автоматом (если файл ответов правильно заполнен), здесь как раз проблем нет.

Но в любом случае мне это не подходит - с сиспрепом или без оного, но с мини-установкой все заканчивается автоматической перегрузкой в конце процесса мини-установки. А мне надо бы не перегружаться... Да и вообще бы не весь процесс мини-установки проходить, а чтобы работо только определение и установка драйверов и все! Потому что для моих целей перегружаться нельзя...

Если же дать самой системе находить новые устройства, то там проблема с подключением жестких дисков... По крайней мере у меня уже есть один неудачный опыт (ноутбук Леново).

Тут вроде забрезжил свет в тонеле - может быть удастся подключать контроллеры дисков после загрузки (тоже антинаучная практика, но в РЕ вроде работает, по крайней мере есть сообщения об успешных подключениях :)

Кстати, тут еще нашел у китайцев интересную инфу про определение PNP через реестр, но пока руки не дошли. Там же еще говорилось, что автоматом в тихую могут определятся только подписанные драйвера (даже при отключении обязательной проверки через реестр). Как с насущными проблемами разберусь, можно будет посмотреть.

Про рег-файл для подключения мыши, если система при первой загрузке на новом железе ее не видит. Я взял его из плагинов БартРЕ и, возможно, там есть что-то лишнее или наоборот, чего-то не хватает. Если система с автологином, то он у меня работает, но не сразу, а примерно в тот момент, когда система начинает находить новое оборудование. Очень может быть, что я не все файлы добавил в нужные папки или упустил что-то из установок в реестр. Я тут расковырял свежую китайскую заливку, у них такой проблемы вроде нет, сейчас выуживаю из нее установки :)

Вот собственно тот файл поддержки мыши:Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\GENERIC_HID_DEVICE]
"ClassGUID"="{745a17a0-74d3-11d0-b6fe-00a0c90f57da}"
"Service"="HidUsb"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID#IrDevice&COL05]
"ClassGUID"="{4D36E96B-E325-11CE-BFC1-08002BE10318}"
"Service"="kbdhid"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID#IrDevice&COL06]
"ClassGUID"="{4D36E96B-E325-11CE-BFC1-08002BE10318}"
"Service"="kbdhid"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID#IrDevice&COL07]
"ClassGUID"="{4D36E96B-E325-11CE-BFC1-08002BE10318}"
"Service"="kbdhid"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID_DEVICE]
"ClassGUID"="{745a17a0-74d3-11d0-b6fe-00a0c90f57da}"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID_DEVICE_SYSTEM_GAME]
"ClassGUID"="{745a17a0-74d3-11d0-b6fe-00a0c90f57da}"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID_DEVICE_SYSTEM_KEYBOARD]
"ClassGUID"="{4D36E96B-E325-11CE-BFC1-08002BE10318}"
"Service"="kbdhid"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID_DEVICE_SYSTEM_MOUSE]
"ClassGUID"="{4D36E96F-E325-11CE-BFC1-08002BE10318}"
"Service"="mouhid"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\HID_DEVICE_UP:000C_U:0001]
"ClassGUID"="{745a17a0-74d3-11d0-b6fe-00a0c90f57da}"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\PCI#CC_0C0300]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbuhci"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\PCI#CC_0C0310]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbohci"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\PCI#CC_0C0320]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbehci"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\USB#Class_03]
"ClassGUID"="{745a17a0-74d3-11d0-b6fe-00a0c90f57da}"
"Service"="HidUsb"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\USB#CLASS_09]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbhub"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\USB#COMPOSITE]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbccgp"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\USB#ROOT_HUB]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbhub"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\USB#ROOT_HUB20]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"
"Service"="usbhub"

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Control\CriticalDeviceDatabase\USB#UNKNOWN]
"ClassGUID"="{36FC9E60-C465-11CF-8056-444553540000}"


[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\HidUsb]
"DisplayName"="Microsoft HID Class Driver"
"Group"="extended base"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,68,00,69,00,64,00,75,00,73,00,62,\
00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000000
"Start"=dword:00000003
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\kbdhid]
"DisplayName"="Keyboard HID Driver"
"Group"="Keyboard Port"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,6b,00,62,00,64,00,68,00,69,00,64,\
00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000000
"Start"=dword:00000001
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\kbdhid\Parameters]
"WorkNicely"=dword:00000000

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\mouhid]
"DisplayName"="Mouse HID Driver"
"Group"="Pointer Port"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,6d,00,6f,00,75,00,68,00,69,00,64,\
00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000000
"Start"=dword:00000003
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\mouhid\Parameters]
"UseOnlyMice"=dword:00000000
"TreatAbsoluteAsRelative"=dword:00000000
"TreatAbsolutePointerAsAbsolute"=dword:00000000

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\usbccgp]
"DisplayName"="Microsoft USB Generic Parent Driver"
"Group"="Base"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,75,00,73,00,62,00,63,00,63,00,67,\
00,70,00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000001
"Start"=dword:00000003
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\usbehci]
"DisplayName"="Microsoft USB 2.0 Enhanced Host Controller Miniport Driver"
"Group"="Base"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,75,00,73,00,62,00,65,00,68,00,63,\
00,69,00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000001
"Start"=dword:00000003
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\usbhub]
"DisplayName"="Microsoft USB Standard Hub Driver"
"Group"="Base"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,75,00,73,00,62,00,68,00,75,00,62,\
00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000001
"Start"=dword:00000003
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\usbohci]
"DisplayName"="Microsoft USB Open Host Controller Miniport Driver"
"Group"="Base"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,75,00,73,00,62,00,6f,00,68,00,63,\
00,69,00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000001
"Start"=dword:00000003
"Type"=dword:00000001

; Check English DisplayName
[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\USBSTOR]
"DisplayName"="USB Storage Test"
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,55,00,53,00,42,00,53,00,54,00,4f,\
00,52,00,2e,00,53,00,59,00,53,00,00,00
"Start"=dword:00000003
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\hdsystem\ControlSet001\Services\usbuhci]
"DisplayName"="Microsoft USB Universal Host Controller Miniport Driver"
"Group"="Base"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,75,00,73,00,62,00,75,00,68,00,63,\
00,69,00,2e,00,73,00,79,00,73,00,00,00
"ErrorControl"=dword:00000001
"Start"=dword:00000003
"Type"=dword:00000001Сдается мне, что я здесь еще не все нужные установки забил... Еще разбираюсь.

Mr dUSHA
09-08-2008, 15:47
Если есть сиспреп и файл ответов, то все проиходит автоматом »
Ничто не мешает вам подсунуть установщику готовый файл ответов напрямую. Тоесть правильно его заполнить, назвать $winnt$.inf и забросить в system32.

Единственный момент, что установщик на этапе Т-0 обнуляет в файле ответов такие параметры:
AdminPassword
DomainAdminPassword
UserPassword
DefaultPassword
ProductKey
productid
StagingKeyUsed

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

Oleg_II
09-08-2008, 17:59
Mr dUSHA
Пробовал $winnt$.inf, но то ли я что-то не так делаю, то ли для мини-установки там чего-то не хватает или лишнее, то ли еще что, но не получилось...

Впрочем, я вас совсем запутаю :) Вобщем-то проблем с использованием сиспрепа или того рег-файла нет, все, в принципе, работает. Но в конце мини-установки идет перезагрузка. Хотелось бы без нее :)

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

Если вдруг наткнетесь в своих исследованиях на подобное, буду благодарен :)

Mr dUSHA
09-08-2008, 20:14
Пробовал $winnt$.inf, но то ли я что-то не так делаю, то ли для мини-установки там чего-то не хватает или лишнее, то ли еще что, но не получилось... »
Сделайте такой файл ответов, который СусПрепом нормально переваривается, и сним установка идет нормально.
Потом запустите это все на виртуальной машине и вытяните из system32 сгенерированый файл $winnt$.inf.
Дело в том, что установщик добавляет еще несколько параметров в $winnt$.inf после старта установки.

Но в конце мини-установки идет перезагрузка. Хотелось бы без нее»
Поведайте таки широкой общественности, зачем нужно отсутствие перезагрузки? Может придумаем какой-то более красивый вариант решения проблемы..

Oleg_II
09-08-2008, 21:02
Mr dUSHA
Да вобщем-то не секрет, я на прошлой странице уже объяснил - занимаюсь "несерьезными", можно сказать антинаучными экспериментами - запуск системы в РАМ на разных компах (почти так же как БартРЕ). Были некоторые проблемы с клавиатурой и мышью, они более-менее решены, сейчас столкнулся с проблемой того, что на некоторых компах не видит жестких дисков кроме своего (в РАМ). Хотелось попробовать определить диски в процессе мини-установки (почему-то кажется, что там больше вероятность их подцепить с ходу).

Вобщем-то, поскольку эксперименты не совсем "правильные" (но уж очень хочется :) , то я и не прошу найти решение, а просто прошу - если вдруг попадется :)

Ну, а вторая часть - "тихая" установка драйверов во время входа в систему без мини-сетапа - просто хотелось уменьшить количество телодвижений (подтвержать, что надо установить, подтверждать, что пусть само найдет, подверждать после установки или если скажет, что драйвер не найден...). У китайцев был вариант с переименовыванием NEWDEV.DLL и ссылкой на скрипт обратного переименования. Т.е. во время логина система ничего не определяет, а пользуется тем, что уже установлено, но в любой момент можно кликнуть на шорткате и определение новых устройств начнется. Тоже какой-никакой выход, но кривоватый и совсем уж не выход...

Еще вопрос по Вашему SETUPAPI_5512.txt (извиняюсь, я просто любитель, много не понимаю еще): правильно ли я понял, что с помощью приведенного патча можно будет добиться того, что в WINNT.SIF задается параметрами:DriverSigningPolicy=Ignore
NonDriverSigningPolicy=IgnoreТ.е. в файле ответов можно будет этого уже не задавать, а работать будет?
И еще: есть в настройках "Поиск драйвера в Интернет", я его отключаю и сразу на один пункт при установке драйверов становится меньше. Отключаю я это рег-твиком, а может быть можно и хаком какого-нибудь установочного файла?
Вот твик, я его в HIVESFT.INF добавляю:HKLM,"Software\Policies\Microsoft\Windows\DriverSearching","DontSearchWindowsUpdate",0x00010001,1

Mr dUSHA
09-08-2008, 21:36
правильно ли я понял, что с помощью приведенного патча можно будет добиться того, что в WINNT.SIF задается параметрами: »
Именно так. После патча эти параметры можно будет уже не задавать в WINNT.SIF вообще, или задавать любые значения, но, все ровно, по обоим параметрам будет применяться решение "Ignore".
Особенно полезно это если файл ответов отсутствует вообще, и задавать параметры неоткуда.

то я и не прошу найти решение, а просто прошу - если вдруг попадется

Перезагрузка после установки, как и запуск самой установки производится Winlogon-ом.
Так что путём заглядывания в душу Winlogon-у оно и попалось... :)

Пока в виде тестирования можно попробовать отключить перезагрузку после установки патчем Winlogon.exe (версия файла 5.1.2600.5512).

0003077C: 8B C2
0003077D: FF 08
0003077E: 55 00


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

Oleg_II
10-08-2008, 10:29
Mr dUSHAМожно пропатчить setupapi.dll.
Для версии 5.1.2600.5512 это будет:

0003C85D: 01 00

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

Что делал:
Открыл файл SETUPAPI.DLL, пошел по адресу 0003C85D, там было 01, поменял на 00 и сохранилася. Еще раз открыл файл и убедился, что по этому адресу у меня теперь 00. Поменял чек-сумму с помощью ModifyPe и добавил в дистрибутив (файл, который был до этого, соответственно предварительно удалил). Установка прошла без проблем. Пробовал на одном из устройств, которое не до конца установилось (желтый знак вопроса) сделать Update Driver - в первом появляющемся окне все равно есть предложение сходить за драйверами на Виндоуз Апдейт... В My Computer > Hardware > Windows Update все осталось по умолчанию (Ask me to search Windows Update every time I connect a new device), в реестре ключа DontSearchWindowsUpdate нет...

Может что-то не так делаю?

ЗЫ Забыл добавить - Windows XP SP3 Professional Volume Licence (English).

Oleg_II
10-08-2008, 11:11
Mr dUSHA
Что-то плохо сегодня идет... Вы не могли бы написать для Driver Signing по каким адресам надо что менять, а то что-то пока у меня тямы не хватает это из файла выудить?

Mr dUSHA
10-08-2008, 12:37
Что-то плохо сегодня идет... Вы не могли бы написать для Driver Signing по каким адресам надо что менять, а то что-то пока у меня тямы не хватает это из файла выудить? »
SYSSETUP.DLL Ver. 5.1.2600.5512

00033E06: 0F E9
00033E07: 84 4A
00033E08: 49 01
00033E09: 01 00
00033E0B: 00 90


Что делал:
Открыл файл SETUPAPI.DLL, пошел по адресу 0003C85D....................

Может что-то не так делаю? »
Все правильно делаете, только патчить надо еще и newdev.dll в двух местах, поэтому я и удалил из поста информацию о SETUPAPI.

Oleg_II
18-08-2008, 13:06
Mr dUSHA
С большим опозданием, но рапортую - после манипуляций подписи драйверов действительно не проверяются :) Правда, я еще и WFP (проверку файлов) полностью отключаю, но это, вроде, другое дело.

С Winlogon-ом пока не проверял, некоторые изменения в планах, слишком много обрезал, миниустановка просто даже не начинается. Это моя проблема, еще буду пробовать...

А по поводу отключения поиска дров на Windows Update пока не получилось?

Еще вопрос, я тут нарвался на такую инфу:OOBE
----------
http://www.msfn.org/board/Say-goodbye-to-OOBE-t16414.html
OOBE (Out of the box experience) is the setup wizard that appears on a normal (not unattended) setup.
Enter Username, connect to network etc.
---------------------------------------------------------
???
First Question is: if OOBE is already disabled in my files?
"it's not needed for SP3 anyway" ?
-------------------------------------------------------------------------------
The changes made in the syssetup.dll are:

SetupOobeInitDebugLog
SetupOobeInitPreServices
SetupOobeCleanup

OobeInProgress

%SystemRoot%\System32\oobe\oobebaln.exe /s
%SystemRoot%\System32\oobe\msoobe.exe /f /retail

all to hex 20 (space)

The above are unicode values so be careful not to overwrite the 00's between the characters.

Or did i forget something gosh?

I made a patcher with CodeFusion for my afore mentioned changes in the syssetup.dll. It just looks for the string so it should work with other versions of the dll too.
To update the internal checksum of the dll download ModifyPE

Run the following commands from cmd:

expand syssetup.dl_ syssetup.dll
PatchSysSetup.exe
modifype.exe syssetup.dll -c
makecab syssetup.dll syssetup.dl_

It should patch 337 bytes. Есть смысл патчить? Я пробовал, ошибок в логе установке нет. Но, с другой стороны, я уже в WINNT.SIF отключаю это ООБИ, т.е. с патчем или без я его все равно не вижу. Не догадался как-то сразу в файле ответов убрать этот пункт... Придется еще раз проверять :)

Mr dUSHA
18-08-2008, 15:38
А по поводу отключения поиска дров на Windows Update пока не получилось? »
Да получилось еще тогда. Просто я не выкладывал.
Из дома выложу, на домашнем компьютере все записано.

Oleg_II
23-08-2008, 21:13
Если вдруг кому-то нужно. Отлючение проверки подписи драйверов для SYSSETUP.DLL v5.1.2600.2180 (Windows XP SP2 English):33956 0F E9
33957 84 4A
33958 49 01
33959 01 00
3395B 00 90 Нашел по аналогии с тем, что предложил Mr dUSHA для SP3.


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

SFC_OS.DLL - отключение Windows File Protection (WFP).
SYSSETUP.DLL - включение возможности редактирования SYSSETUP.INF.

Версия файлов все таже для SP2 - v5.1.2600.2180: SFC_OS.DLL
---------------
ECE4 83 3B
ECE5 F8 C0
ECE6 9D EB
ECE7 75 32
ECE8 08 90

SYSSETUP.DLL
------------------
33679 73 72


Отключение DEP сразу во время установки через редактирование файла SETUPDD.SYS v5.1.2600.2180, нашел здесь же на форуме для SP3 (те же значения работают и на предидущей версии), только сейчас автора с ходу не назову, сорри: SETUPDD.SYS
-----------
BB33 38 5C

Не забываем исправить чек-суммы после применения патчей!


Отключение встроенного файрвола в процессе установки для SP2 и SP3 (где-то нашел документ от Мелкософта), файл NETFW.INF: [version]
Signature = "$Windows NT$"
DriverVer =07/01/2001,5.1.2600.5512

[DefaultInstall]
AddReg=ICF.AddReg.DomainProfile
AddReg=ICF.AddReg.StandardProfile

[ICF.AddReg.DomainProfile]
HKLM,"SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile","DoNotAllowExceptions",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile","EnableFirewall",0x00010001,0

[ICF.AddReg.StandardProfile]
HKLM,"SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile","DoNotAllowExceptions",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile","EnableFirewall",0x00010001,0


Избавление от папок System Volume Information на дисках/разделах (также требуется выключение служб Восстановление Системы, Индексирование и Distributed Link Tracking Client, может еще каких, но эти вроде главные), два варианта:
1. Замена файла MOUNTMGR.SYS на файл из XP SP0 (информация от eXPerience).
2. Патч NTOSKRNL.EXE с помощью утилиты SVI Eliminator (есть на просторах инета).


Еще есть пара патчиков для Хоум Эдишн (установка дистрибутива Хоум как Про без всяких взломов и включение вкладки Безопасность в Хоум), а также небольшие хитрости для SYSOC.INF, SYSSETUP.INF TXTSETUP.SIF (подключение дополнительного файла хивов, который подключается последним, поэтому через него можно отредактировать только что собранный начальный реестр, включая некоторые установки WINNT.SIF, добавление файла с твиками, которые применятся в момент установки компонентов - это, наверно, уже известно, отключение минимальных требований к памяти и месту на диске, классический вид установки, отключение дублирования некоторых файлов по разным папкам и т.д.). Если это уместно здесь, то тоже могу описать.

Все примочки можно применить в момент установки. Если еще что-то найду (а вроде еще есть, надо только время на эксперименты), то поделюсь :)

ЗЫ Вроде нашел как заранее поменять в одном из файлов дефолтные установки для свойств папки (показывать системные файлы, показывать расширения для известных файлов, классический вид и т.д.), которые задаются твиками реестра. Буду пробовать :)

ЗыЗы Проблемы с мышами и клавиатурами во время клонирования решены! Сорри за оффтом, трудно было сдержать свой восторг по этому поводу :)

Mr dUSHA
23-08-2008, 23:14
Oleg_II, давно обещаное:
С таким патчем если ключ DontSearchWindowsUpdate в реестре будет отсутствовать, то "Поиск драйвера в Интернет" показываться не будет:

Для версий файлов 5.1.2600.5512:

setupapi.dll:
0003C85D: 01 00

newdev.dll
0000D061: 40 90

Dilinjer
25-08-2008, 15:45
Знает ли ктонить как пропатчить SFC_OS.DLL 5.1.2600.2180 чтоб было отключение инициализации SFC и проверки всех файлов на этапе Т-8 установки Windows как в SFC_OS.DLL 5.1.2600.5512 ?

Boa Soft
25-08-2008, 18:18
Как показала проверка, предложенный патч для setupapi для висты имеет побочные действия.

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

Так что, все не так просто.

Mr dUSHA
25-08-2008, 19:02
Знает ли ктонить как пропатчить SFC_OS.DLL 5.1.2600.2180 чтоб было отключение инициализации SFC и проверки всех файлов на этапе Т-8 »
0000E8AB: 74 EB
0000ECE7: 75 EB

Это оба патча для 2180, которые описаны в SFC_OC_5512.txt.
Но не забывайте, что гдето в твиках на Т13-Т12 руками вам нужно внести в реестр SFCDisable = 0xFFFFFF9D, иначе не сработает.

Mr dUSHA
25-08-2008, 22:11
Драйвера на звук устанавливаются, а звука нет. После возвращения назад непатченой версии все становится нормально - звук появляется. »
Проверил. Действительно есть такое.
Аудиоподсистема при запуске проверяет подписи некоторых системных файлов. Так что возвращение не патченой библиотеки в уже установленую систему возвращает звук.

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




© OSzone.net 2001-2012