Показать полную графическую версию : Структура для пропатчивания системы\образа
По моему мнению он не очень подходит для диалогов новой системы! »
Точно. А что скажешь про это:
STARTER и HOME BASIC - это лишнее. »
???
P.S. Чуть не забыл: а для патчера basebrd.dll.mui в редакции Enterprise, в папке Editions какое имя папке дать? Так и назвать - Enterprise? Подхватится?
OEM22, А что скажешь про это »
Вам лишнее, но кому-то может пригодится!
Так и назвать - Enterprise? Подхватится? »
Да.
Но...
В версии из шапки есть папка HOME, которая предназначалась для HOME PREMIUM.
В этом скрипте должны быть папки с полными названиями редакций, т.е.
home premium и home basic.
Времени тестировать не было, поэтому, если можно, проверьте, будут ли подхватываться они!
Das Betrunkene Pferd
20-07-2010, 19:37
Подумалось: может еще и твики реестра автоматически вносить?
Описание:Все *.reg файлы помещаются в папку Tweaks. Скрипт подгружает раздел [HKEY_LOCAL_MACHINE\SYSTEM\ в [HKEY_USERS\WIM_HKLM_SYS\, и вызывает для обработки твиков программу regconv, которая:
производит чтение из ветки [HKEY_USERS\WIM_HKLM_SYS\Select параметра "Current", в котором хранится номер текущего CurrentControlSet'а в образе
производит замену имен веток реестра в твиках:
[HKEY_CLASSES_ROOT\ на [HKEY_USERS\WIM_HKLM_SFT\Classes\
[HKEY_CURRENT_USER\ на [HKEY_USERS\WIM_HKCU\
[HKEY_LOCAL_MACHINE\SOFTWARE\ на [HKEY_USERS\WIM_HKLM_SFT\
[HKEY_LOCAL_MACHINE\SYSTEM\ на [HKEY_USERS\WIM_HKLM_SYS\
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ на [HKEY_USERS\WIM_HKLM_SYS\ControlSetNUM\, где NUM — номер CurrentControlSet
[HKEY_USERS\.DEFAULT\ на [HKEY_USERS\WIM_HKU_DEF\ (на деле такой же HKCU раздел, но из-за специфичности твиков, вносимых в него, обрабатывается отдельно)
После этого стандартными средствами к реестру подружаются:
%MntPath%\Users\Default\NTUSER.DAT в HKEY_USERS\WIM_HKCU (раздел HKCU для пользователя по умолчанию)
%MntPath%\Windows\System32\config\SOFTWARE в HKEY_USERS\WIM_HKLM_SFT (раздел HKLM\SOFTWARE)
%MntPath%\Windows\System32\config\DEFAULT в HKEY_USERS\WIM_HKU_DEF (раздел HKU\.DEFAULT)
, где %MntPath% путь к папке, куда смонтирован install.wim; в скобках — кусты реестра на живой системе.
Затем regedit вносит твики в эти разделы и они выгружаются.
В итоге все твики оказываются внесёнными в образ системы и установка идёт уже с твиками.
В качестве дополнения также реализовано внесение твиков в стандартную учётку Администратора.
Ограничения:
Поддерживается внесение твиков только в разделы HKCR, HKCU, HKLM\SOFTWARE, HKLM\SYSTEM, HKU\.DEFAULT. Любые другие твики будут проигнорированы; regconv выдаст предупреждение.
Исходник, возможно, компилируется только Visual Studio (для конечного пользователя не страшно).
Использование отдельно от „Структуры для пропатчивания системы/образа”:
скачиваете Tweaks Structure.7z, распаковываете в любую папку
в папку Tweaks кладёте все свои твики реестра.
открываете в редакторе файл Tweaks.cmd и в 6 строке, после Set MntPath=, указываете путь к папке, куда смонтирован install.wim
запускаете Tweaks.cmd.
Использование совместно со „Структурой для пропатчивания системы/образа”:
скачиваете Run with tweaks.7z, распаковываете в папку WORK, где хранятся остальные файлы структуры для пропатчивания системы/образа
в папку Tweaks кладёте все свои твики реестра.
для пропатчивания образа, используете Run with tweaks.cmd для работы с 32-разрядной Windows, и Run with tweaks x64.cmd для работы с 64-разрядной: в процессе работы скрипт спросит, хотите ли вы внеси твики в образ.
В качестве примера, в комплекте идёт твик, меняющий устаревшие шрифты системных диалогов на Segoe UI.
Das Betrunkene Pferd, у меня есть отдельный скрипт, который интегрирует ключ продукта,
добавляет сертификат и логотип производителя, интегрирует твики в образ,
какие нельзя в образ - те на этапе установки с последующим уничтожением
следов в установленной системе, ну и отключает компоненты.
Это из того, чего нет в скрипте из шапки...
Я не знаю, зачем создавать отдельную папку для твиков, когда вполне можно обойтись
двумя РЕГ-файлами: один для интеграции в образ, другой для интеграции во время установки.
-------------------------
В любом случае это не должен быть отдельный скрипт, т.к. это уже чистая автоустановка!
ЗЫ. Скоро народ из Автоустановки потянется...
Das Betrunkene Pferd
20-07-2010, 20:38
у меня есть отдельный скрипт »
И у меня тоже, часть скрипта я только что выложил. Это скрипт лишь автоматизация Импорта параметров реестра до установки Windows Vista (http://www.oszone.net/8597).
зачем создавать отдельную папку для твиков »
У меня на каждый группу твиков по отдельному reg-файлу, в частности выложенные твики меню „Пуск”. Удобно редактировать, а скрипт упрощает процесс интеграции.
В любом случае это не должен быть отдельный скрипт, т.к. это уже чистая автоустановка! »
Кто ж против то, я выложил то, что смог написать.
ЗЫ. Скоро народ из Автоустановки потянется... »
Не вижу ничего плохого…
Das Betrunkene Pferd, попробуйте интегрировать свой скрипт в скрипт из шапки,
посмотрим, потестим...
Das Betrunkene Pferd
20-07-2010, 21:14
Das Betrunkene Pferd, попробуйте интегрировать свой скрипт в скрипт из шапки,
посмотрим, потестим... »
Run with tweaks.cmd (http://forum.oszone.net/attachment.php?attachmentid=48517&d=1280395222) со вспомогательными файлами, тестируйте.
UPD: нашёл на сайте Microsoft информацию по ControlSet'ам (http://support.microsoft.com/kb/100010); завтра вечером реализую поддержку CurrentControlSet утилитой конвертирования.
Mr dUSHA
20-07-2010, 23:36
HKLM\HARDWARE — не нашёл, где хранится; »
Нигде. Это виртуальный раздел, создаваемый динамически в памяти.
Следующий раз, чтоб не тыкать пальцем в небо, смотрите на живой системе
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist
В файле куста раздела hivelist нет, поскольку он также виртуальный.
нужно только узнать из какой ветки при установке создаются CurrentControlSet »
В оригинальном дистрибутиве Current=1.
Но культурно было б приделать в конвертор чтение Currentа, и корректировку ControlSet00х на нужный номер.
То есть прямо конвертором загружаете кусть SYSTEM в реестр уже сразу в HKEY_USERS\WIM_HKLM_SYS, читаете там Current и генерируете тогда REG-файл.
Das Betrunkene Pferd
21-07-2010, 07:06
В оригинальном дистрибутиве Current=1.
Но культурно было б приделать в конвертор чтение Currentа, и корректировку ControlSet00х на нужный номер.
То есть прямо конвертором загружаете кусть SYSTEM в реестр уже сразу в HKEY_USERS\WIM_HKLM_SYS, читаете там Current и генерируете тогда REG-файл. »
Я не умею работать с реестром прямо из C. Говорю же:
я выложил то, что смог написать.»
Хотя думаю, что это можно обойти. Надо попробовать вначале подгружать куст реестра SYSTEM, через reg query читать значение параметра Current, и затем передавать в regconv с помощью ключа командной строки.
WinTiger
21-07-2010, 11:18
Smarty, я так понял что файлы дистрибутива надо распокавать из исо образа в папку work?
WinTiger, не все файлы, а только INSTALL.WIM.
WinTiger
21-07-2010, 17:41
Smarty, INSTALL.WIM ложить целиком или тоже распокавать? и в какую конкретно папку ложить?
Das Betrunkene Pferd
21-07-2010, 17:44
Обновил конвертер, теперь CurrentControlSet обрабатывается корректно. Все вложения обновлены (в Run All.cmd исправлен небольшой косяк).
Но культурно было б приделать в конвертор чтение Currentа, и корректировку ControlSet00х на нужный номер. »
Не стал заморачиваться. На живой системе такой способ не только не нужен, но и не прокатит (система не даст смонтировать уже использующиеся ветки реестра), а в дистрибутиве (если его конечно не обработали чьи-то уж очень шаловливые ручки), Current равен 1.
WinTiger, целиком в \WORK.
Упустил, не написал в шапке...
Mr dUSHA
21-07-2010, 22:26
Не стал заморачиваться. На живой системе такой способ не только не нужен, но и не прокатит (система не даст смонтировать уже использующиеся ветки реестра), а в дистрибутиве (если его конечно не обработали чьи-то уж очень шаловливые ручки), Current равен 1. »
Так я про дистрибутив и говорил конечно. Для живой системы и конвертор никакой не нужен.
а в дистрибутиве (если его конечно не обработали чьи-то уж очень шаловливые ручки), Current равен 1. »
Ручкам такое сделать обычно тоже не всегда под силу. Это надо сначала установить систему, угробить ее установкой кривого драйвера, и загрузиться в режиме "Последняя удачная конфигурация", после чего обработать SYSPREP-ом и сграбить систему в WIM-файл. Только в таком случае Current не будет равен 1.
Я не умею работать с реестром прямо из C. »
Используйте не только сам С, а стандартный WinAPI.
А по сабжу вам нужен RegLoadKey.
WinTiger
22-07-2010, 09:23
Smarty,
чето с этим пропачиванием сложновато, поэтому я упростил
Последовательность действий:
1. С помощю gimagex распоковать INSTALL.WIM в какую либо папку.
2. С помощю Restorator 2007 отредактировать распакованные файлы.
3. С помощю gimagex запоковать в WIM-образ отредактированные файлы, и переименовать в INSTALL.WIM
4. Заменить оригинальный INSTALL.WIM отредактированным.
Теперь вопросы:
1. Можно ли так?
2. Чем это черевато?
3.А как правильно надо делать?
WinTiger, ответы:
1. Можно ли так? »
Можно.
2. Чем это черевато? »
Чтобы вручную все это сделать, надо изменять права на файлы.
Если вы права на файлы возвращаете по умолчанию, то ничем не чревато, если после редактирования
оставляете как есть, то, теоретически, любая зараза может подменить вам файл, а система и не дернется,
т.к. права принадлежат уже вам...
3.А как правильно надо делать? »
Использовать W7Patcher, который перед изменением файла забирает права, а по окончании - возвращает.
Для этого и была сделана данная структура и написаны скрипты... :)
WinTiger
22-07-2010, 11:26
Smarty, все понял,кроме одного.
INSTALL.WIM надо распаковывать в \WORK\files ? или \WORK\resources\shared ?
WinTiger, целиком в \WORK. »
В корень этой папки... :)
WinTiger
22-07-2010, 11:41
Smarty, я говорю про содержимое INSTALL.WIM или его ненадо распаковывать?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.