Я пытаюсь два разных инструмента для редактирования и удаления всех узлов из куста реестра Windows:
chntpw
который был разработан для редактирования файлов паролей (SAM), но теперь имеет интерактивную оболочку для редактирования файлов реестра.hivex
который является более современным и в первую очередь предназначен для редактирования реестра общего назначения.
Просто чтобы иметь представление о различиях между этими программами, я взял свой BCD-файл (который используется диспетчером загрузки Windows) и использовал обе эти программы для удаления всех узлов.
Как и ожидалось, полученные файлы имеют одинаковый размер, но не идентичны. Когда я открывал каждый с помощью hivex
или chntpw
, оба редактора отображали 0 узлов для обоих файлов.
Однако когда я открываю hivex
, файл, который предположительно имеет 0 узлов, я вижу оставшиеся данные из его предыдущего состояния.
И наоборот, результат chntpw
не содержит никаких остаточных данных от узлов.
Сейчас я изучаю формат файла реестра, поэтому я должен спросить:
Если бы я использовал один, какой я должен выбрать? Я, очевидно, хочу максимально реалистично смоделировать поведение синтаксического анализатора / писателя Microsoft (я хочу быть в состоянии обмануть их). Так же как и оставшиеся данные имеют какое-то значение; выдает ли менеджер загрузки Windows какие-либо ошибки, если я использую hivex
для создания искусственного BCD-файла?
PS: Вопрос не зависит от моей основной цели, которая, я надеюсь, была прояснена: я хочу исправить / создать файл BCD (Boot Config Data) без использования официального установщика Windows. Так что если у вас есть какие-либо советы в этом направлении, не стесняйтесь давать.