[Цитировать]

    Gemostarter
  • 15956
  • Стаж: 7 лет 7 месяцев
  • Сообщений: 323
  • Репутация:35

    [+] [-]
GeStart Live KitGeStart Live Kit (GSLK) - Программа, предназначенная для упрощения процедуры редактирования загрузочных образов Windows Preinstallation Environment (WinPE).
GSLK является наследником программы MultiPETweaker (MPET), и содержит весь её функционал - загрузку и выгрузку файлов реестра WinPE в реестр текущей системы, удаление лог-файлов, создаваемых при загрузке, импорт reg-файлов в реестр WinPE.
Важное отличие этой версии GSLK от её же ранних версий, MPET и других аналогичных программ - разбор reg-файлов программа производит полностью самостоятельно, ни regedit, ни консольный reg при этом не задействуются. Для записи прочитанных параметров используется библиотека Offline Registry, файлы реестра WinPE не загружаются в реестр активной системы. Эта библиотека не позволяет записывать изменения в исходный файл реестра, только сохранить его весь (вместе с изменениями) в новый файл.
Такой подход имеет ряд преимуществ перед стандартным методом, когда кусты реестра WinPE загружаются в реестр активной системы, затем в reg-файле редактируются имена разделов, результат сохраняется во временный reg-файл, который затем импортируется с помощью reg/regedit, после чего кусты выгружаются обратно.
Преимущества:
1. При импорте reg-файлов реестр активной системы остаётся в полной безопасности
2. Ограничения доступа к разделам целевого реестра игнорируются библиотекой Offline Registry
3. Итоговый размер файла реестра будет минимально возможным, остатки когда-то удалённых разделов и параметров в новый файл не перенесутся
4. Нет необходимости для уменьшения размера загрузочного образа удалять логи реестра, так как они не создаются
5. В случае ошибки импорта reg-файла целевой куст реестра останется в точности таким же, каким был до попытки импорта
Недостатки:
1. Низкая скорость импорта

Небольшое пояснение

Разбор reg-файла, открытие файлов реестра и запись параметров занимают доли секунды, но последующее сохранение файлов реестра требует больше времени, в зависимости от их размера. В среднем, импорт одного reg-файла в реестр одной WinPE занимает одну-две секунды. Кажется, не так уж и долго. Но при импорте нескольких reg-файлов скорость падает прямо пропорционально их количеству, так как сохранение кустов реестра производится после импорта каждого файла. То есть, импорт десяти reg-файлов в десять реестров займёт чуть более двух-трёх минут.
Конечно, проблема устранима. Например, путём чтения и интерпретации всех reg-файлов сразу. Тогда время импорта даже сотни файлов будет ненамного больше, чем одного. Но один косой reg-файл не даст импортировать все остальные. Либо можно отказаться от Offline Registry, и переделать программу под более стандартные средства. Но это лишит её многих преимуществ.
Так же возможна загрузка файлов реестров всех выбранных WinPE в реестр активной системы для их просмотра и ручной правки. Отключение этих файлов от реестра сработает вне зависимости от того, под какими именами они были загружены - вы можете загрузить их с помощью любого редактора реестра под произвольным именем, а затем выгрузить с помощью GSLK.
Допустимы reg-файлы не только со стандартными сигнатурами REGEDIT4 и Windows Registry Editor Version 5.00, но так же с двумя альтернативными:
GeStart Live Kit Registry Tweaker - ничего особенного, может выступать как защита от случайного импорта в реестр активной системы
GeStart Live Kit Registry Tweaker Extended - поддерживает использование переменных, прочитанных программой из конфига. Все эти переменные - строки, поэтом смысл имеет лишь для имён разделов/параметров, и значений строковых (REG_SZ) параметров. Список доступных переменных можно прочесть в демонстрационном конфиге.
При отсутствии библиотеки Offline Registry импорт reg-файлов будет недоступен. Другие связанные с реестром функции используют стандартное API, поэтому доступны в любом случае.
Но не реестром единым, программа так же способна нажатием одной кнопки упаковать все выбранные WinPE в загрузочные образы формата WIM. Возможна многоиндексная паковка для совместимости с native-загрузкой или других целей.
Кроме того, в целях обеспечить возможность отката редактируемого WinPE к стабильному состоянию, поддерживается распаковка WIM. Распаковываться будут wim-файлы, назначенные в конфиге бэкапом. И только индекс, обозначенный как загрузочный, а если его нет, то последний. Многоиндексная распаковка не поддерживается по причине "нафиг надо".
Для паковки и распаковки образов используется библиотека WimLib. При её отсутствии все функции по работе с WIM будут недоступны.
Если формат какого-либо образа отличается от WIM (например, образ дискеты IMA, как у native-образов WinPE на базе XP), в конфиге можно указать команды, которые будут выполнены вместо паковки и/или распаковки.
Настройка программы производится путём правки файла конфигурации "config.ini". Файл должен находиться в той же папке, что и исполняемый файл программы. В архиве с программой есть демонстрационный конфиг, изначально написаный мной для работы с собственной сборкой WinPE, и дополненый комментариями ко всем его параметрам. Можно просто скопировать этот файл в папку с программой, и поправить некоторые параметры для адаптации к своей WinPE.
При правильной настройке программа может быть адаптирована к абсолютно любой существующей сборке WinPE.
Важно понять: GeStart Live Kit на то и Kit, что предназначена для многократного и более-менее частого использования. Она не очень хороша, если нужно импортировать один-единственный твик реестра, или один раз перепаковать пару-тройку образов, так как требует некоторое время для настройки. Но довольно удобна при длительном и вдумчивом редактировании множества "ядер" WinPE, когда паковать их приходится десятки раз, временами откатываясь на предыдущие версии.

Скриншоты:

История изменений:

+ Добавлено
- Удалено
^ Обновлено
1.1.0.0
+ Перепаковка WIM
+ Отменить или поставить на паузу любую операцию
+ Отключить отображение прогресса операций с WIM
+ Drag&Drop в строку путей к reg-файлам
+ Две альтернативные сигнатуры reg-файлов
+ Использовать значения из конфига в reg-файлах с одной из альтернативных сигнатур
^ Библиотека Offline Registry до версии 10.0.15063.168 (НЕ работает в Windows XP!)
1.0.0.0 - Программа полностью переписана. Используется библиотека Offlaine Registry.
0.9.0.0 - Добавлены функции упаковки и распаковки загрузочных wim-образов. Убран автоматический режим МультиТвикера. Доработан код, отвечающий за работу с реестрами. Изменено название программы и способ нумерации версий.
0.13 - Исправлена ошибка, из-за которой при импорте нелатинских символов получались "кракозябры"
0.11 - Первый релиз
Вложение

Version 1.1.0.0



Последний раз редактировалось: Gemostarter (2019-01-24 03:55), всего редактировалось 8 раз(а)

[Цитировать]

    Gemostarter
  • 15956
  • Стаж: 7 лет 7 месяцев
  • Сообщений: 323
  • Репутация:35

    [+] [-]
Утилита обновлена, исправлен баг с импортом нелатинских символов.

[Цитировать]

    Gemostarter
  • 15956
  • Стаж: 7 лет 7 месяцев
  • Сообщений: 323
  • Репутация:35

    [+] [-]
Утилита обновлена. Функциональность слегка расширена, поэтому изменил название.

[Цитировать]

    Joker-2013
  • 1039
  • Стаж: 9 лет 4 месяца
  • Сообщений: 2053
  • Репутация:120

    [+] [-]
  • Откуда: из прошлого
Gemostarter, ay Я уж думал, что утилита заброшена.

[Цитировать]

    Joker-2013
  • 1039
  • Стаж: 9 лет 4 месяца
  • Сообщений: 2053
  • Репутация:120

    [+] [-]
  • Откуда: из прошлого
46049Интеграция одного reg-файла в реестры всех указанных Windows PE
Лучше бы, папку с твиками указывать и они бы все применялись.
Так хоть можно было накидывать нужные из запасников и применять...
А один файл, нужно ручками компоновать, что не есть гуд.

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1322
  • Репутация:127

    [+] [-]
Joker-2013, я делал перепаковщик сборок с импортом reg-файлов кучей, но нужно заново подкручивать, последние WIM-файлы имеют имя тома в конце XML и по каким то причинам "поток" данных при чтении обрывается, поэтому в последнем варианте подстройки скрипта перепаковки wim пришлось использовать инклуд с запросами в dll. Кстати с открытым исходником )

[Цитировать]

    Joker-2013
  • 1039
  • Стаж: 9 лет 4 месяца
  • Сообщений: 2053
  • Репутация:120

    [+] [-]
  • Откуда: из прошлого
AZJIO, Я долгое время пользовался...
За неимением ничего лучшего.
Потом сделал свои перепаковщики на батниках и стал пользоватся ими.
Кстати с открытым исходником
Да в AutoIT и так всё открыто... Распаковать то проблем нет.

[Цитировать]

    Gemostarter
  • 15956
  • Стаж: 7 лет 7 месяцев
  • Сообщений: 323
  • Репутация:35

    [+] [-]
Joker-2013, прикрутить - не проблема (завтра, сейчас я баиньки), только мне тестировать все равно нечем... Согласны побыть бета-тестером?

[Цитировать]

    Joker-2013
  • 1039
  • Стаж: 9 лет 4 месяца
  • Сообщений: 2053
  • Репутация:120

    [+] [-]
  • Откуда: из прошлого
51601Согласны побыть бета-тестером?
Мне сейчас и не на чем...
Я делал так:
Те твики что применились, перемещаются в папку BackUp
Откройте конструктор из раздачи AntiWinBlock 8.1 подсмотрите, если что...
Просто и удобно...

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1322
  • Репутация:127

    [+] [-]
Gemostarter, Посмотри в скрипте функцию _RegConv, сделал отделно изолированную. Я тут вечер поковырялся, ещё хочу оптимизировать, но импорт кучи файлов в один уже готов. Хочу имена разделов задавать через ini.
51600Да в AutoIT и так всё открыто... Распаковать то проблем нет.
Несолидно как то с автором обсуждать код, если тебе исходник не дан.

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 3114
  • Репутация:127

    [+] [-]
AZJIO, aa
По поводу _RegConv, там не все так просто. Посмотри мою утилиту, там в ini файле прописана конвертация, нужен исходник - напиши в личку.

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1322
  • Репутация:127

    [+] [-]
nikzzzz, посмотрел, но CurrentControlSet я заменяю на ControlSet001, а остальные разделы типа "S-1-5-18" я их как то на этапе создания reg-файлов отсекал, они же для других пользователей, а тот что загрузен CurrentControlSet является просто зеркалом текущего пользователя, поэтому к примеру regshot и делает на выходе копии зеркальные, я их сразу отрезаю. Не думал чтобы такую защиту от дурука прикрутить, чтобы не портить текущий реестр. Кстати да, надо дополнительно отрезать пути не соответствующие регламентируемым - подключенным кустам, то есть всё что не в 3 куста, лесом. А всякие системные и хардваре у меня режуться.
Кстати я понял теперь вроде почему у меня шрифт не работает, раньше из DEFAULT создавался текущий пользователь, а тут в сборке NTUSER.DAT лежит, то есть пользователь уже создан и естественно твики из DEFAULT не использовались для текущего.


Последний раз редактировалось: AZJIO (2018-03-05 00:57), всего редактировалось 1 раз

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 3114
  • Репутация:127

    [+] [-]
51614а остальные разделы типа "S-1-5-18"
С Win8\8.1 это не прокатит, там как раз все и лежит в типа "S-1-5-18" .

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1322
  • Репутация:127

    [+] [-]
nikzzzz, S-1-5-18 = HKEY_CURRENT_USER, точнее из 5 который загружен.

[Цитировать]

    Gemostarter
  • 15956
  • Стаж: 7 лет 7 месяцев
  • Сообщений: 323
  • Репутация:35

    [+] [-]
Экспериментальная версия, добавлена поддержка импорта всех reg-файлов из папки. Папку указываем методом Drag&Drop.
Кто-то должен это испытать...
[ Перенесено в шапку ]


Последний раз редактировалось: Gemostarter (2018-03-10 09:45), всего редактировалось 1 раз

Страница 1 из 2


Показать сообщения:    

Текущее время: 21-Ноя 09:23

Часовой пояс: UTC + 3


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