Содержание

Работа с реестром Windows через PowerShell

PowerShell предоставляет удобные средства для чтения, создания, изменения и удаления ключей и значений реестра Windows.

Основные области реестра

Чтение значений из реестра

Пример: получить название установленной версии Windows:

Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name "ProductName"

Можно получить сразу все параметры:

Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion"

Создание ключей и значений

Создание нового ключа

New-Item -Path "HKCU:\Software\ITVideoDemo" -Force

Создание строкового значения (REG\_SZ)

New-ItemProperty -Path "HKCU:\Software\ITVideoDemo" -Name "TestValue" -Value "HelloWorld" -PropertyType String -Force

Создание числового значения (DWORD)

New-ItemProperty -Path "HKCU:\Software\ITVideoDemo" -Name "Count" -Value 10 -PropertyType DWord -Force

Изменение значения

Изменить существующее значение

Set-ItemProperty -Path "HKCU:\Software\ITVideoDemo" -Name "TestValue" -Value "UpdatedValue"

Удаление ключей и значений

Удаление значения

Remove-ItemProperty -Path "HKCU:\Software\ITVideoDemo" -Name "TestValue"

Удаление ключа

Remove-Item -Path "HKCU:\Software\ITVideoDemo" -Recurse -Force

Проверка существования

Проверка наличия ключа

Test-Path -Path "HKCU:\Software\ITVideoDemo"

Проверка значения вручную

$value = Get-ItemProperty -Path "HKCU:\Software\ITVideoDemo" -Name "TestValue" -ErrorAction SilentlyContinue
if ($value -ne $null) {
    "Значение найдено"
} else {
    "Значение не найдено"
}

Импорт и экспорт реестра

PowerShell может использовать `reg.exe` для экспорта и импорта:

Экспорт ключа в .reg файл

reg export "HKCU\Software\ITVideoDemo" "C:\Backup\itvideo.reg" /y

Импорт из .reg файла

reg import "C:\Backup\itvideo.reg"

Рекомендации по безопасности

reg export "HKCU\Software" "C:\Backup\HKCU_Backup.reg" /y

Ссылки