-1

Я пытаюсь либо найти, либо создать список всех разделов реестра, которые существуют в нескольких версиях Windows. Я интенсивно искал в Интернете, не найдя ни одного такого списка или команды для рекурсивного создания такого списка. Кто-нибудь знает, как получить такой список?

3 ответа3

2

Благодаря комментарию IT Solutions я нашел ответ на этот вопрос. Ниже приведен код командной строки:

reg.exe export HKEY_LOCAL_MACHINE C:\path\machine_registry.txt
reg.exe export HKEY_CLASSES_ROOT C:\path\local_registry.txt
reg.exe export HKEY_CURRENT_USER C:\path\current_registry.txt
reg.exe export HKEY_USERS C:\path\users_registry.txt
reg.exe export HKEY_CURRENT_CONFIG C:\path\config_registry.txt
1

из командной строки:

reg.exe export HKLM\hardware hklm-hw.reg
reg.exe export HKLM\sam hklm-sam.reg
reg.exe export HKLM\security hklm-sec.reg
reg.exe export HKLM\software hklm-sw.reg
reg.exe export HKLM\system hklm-sys.reg

'' the same for HKCU branch
reg.exe export HKCU\folders hkcu-folders.reg

и так далее ... затем проанализируйте, что вы хотите, или используйте опцию compare чтобы получить разницу

Вы также можете использовать WinMerge для сравнения и получения diff между снимками реестра

Чтобы сохранить весь реестр в текстовом формате, просто запустите regedit.exe и экспортируйте все из корня реестра.

Если вы хотите сделать это программно, то на этот вопрос уже есть ответ: https://stackoverflow.com/q/6825555

1

Вы можете использовать PowerShell!

Function ListSubkeys($rootKey) {
    Get-ChildItem -LiteralPath $rootKey -ErrorAction SilentlyContinue | % {
        $_.Name # Output the item's name
        ListSubkeys $_.Name # Recurse into its subkeys
    }
}
Push-Location $args[0]
ListSubkeys $args[0]
Pop-Location

Этот скрипт определяет рекурсивную функцию ListSubkeys и затем вызывает ее. Чтобы использовать его, сохраните этот код в виде файла .ps1 . Следуя инструкциям в разделе «Включение сценариев» вики-тега PowerShell, вы можете запустить его из командной строки PowerShell, например, указав имя файла и начальный ключ в формате пути PowerShell (конечный \ важен):

.\regkeys.ps1 'HKLM:\'

Чтобы отправить вывод в файл, используйте оператор перенаправления > , например так:

.\regkeys.ps1 'HKCU:\' > C:\Users\me\Documents\allmyHKCUkeys.txt

Обратите внимание, что HKCR на самом деле представляет собой комбинацию записей из мест в HKLM и HKCU, поэтому экспорт будет дублировать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .