введение:
HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_ MACHINE, HKEY_USERS и HKEY_CURRENT_CONFIG Файлы находятся в папке %SystemRoot%\System32\Config, где %SystemRoot% — папка, куда установлена Windows. Файл Ntuser.dat создается для каждого пользователя и хранит его настройки находится в %SystemDrive%\Documents and Settings\%Username% (Windows XP) или %SystemDrive%\Users\%Username% (для систем начиная с Vista), где %Username% — имя пользователя. Реестр Windows состоит из пяти так называемых корневых разделов (root keys) ФАЙЛ -> КУСТ SAM -> HKEY_LOCAL_MACHINE\SAM SECURITY -> HKEY_LOCAL_MACHINE\SECURITY SOFTWARE -> HKEY_LOCAL_MACHINE\SOFTWARE SYSTEM -> HKEY_LOCAL_MACHINE\SYSTEM SYSTEM -> HKEY_CURRENT_CONFIG DEFAULT -> HKEY_USERS\.DEFAULT Ntuser.dat -> HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
Содержит глобальную информацию о компьютерной системе, включая такие данные об аппаратных средствах и операционной системе, в том числе: тип шины, системная память, драйверы устройств и управляющие данные, используемые при запуске системы. Информация, содержащаяся в этом разделе, действует применительно ко веем пользователям, регистрирующимся в системе.
HKEY_CLASSES_ROOT
Содержит ассоциации между приложениями и типами файлов (по расширениям имени файла).
HKEY_CURRENT_CONFIG
Содержит конфигурационные данные для текущего аппаратного профиля. Аппаратные профили представляют собой наборы изменений, внесенных в стандартную конфигурацию сервисов и устройств, установленную данными разделов Software и System корневого раздела HKEY_LOCAL_MACHINE. В разделе HKEY_CURRENT_CONFIG отражаются только изменения. Кроме того, параметры этого раздела появляются также в разделе HKEY_LOCAL_MACHINE\System\CurentControlSet\HardwareProfites\Current
HKEY_CURRENT_USER
Содержит, профиль пользователя, на данный момент. зарегистрировавшегося в системе, включая переменные окружения, настройку рабочего стола, параметры настройки сети, принтеров и приложений. Этот раздел представляет собой ссылку на раздел HKEY USERS\username, где username — имя пользователя, зарегистрировавшегося в системе на текущий момент.
HKEY_USERS
Содержит все активно загруженные пользовательские профили, включая HKEY_CURRENT_USER, а также профиль по умолчанию. Раздел HKEY_USERS содержит вложенный раздел Default, а также другие разделы, определяемые идентификатором безопасности (Security ID) каждого пользователя.
Допустимые для создания элементы:
ItemType -> Description -> DataType String -> A string -> REG_SZ ExpandString -> A string with environment variables that are resolved when invoked -> REG_EXPAND_SZ Binary -> Binary values -> REG_BINARY DWord -> Numeric values -> REG_DWORD MultiString -> Text of several lines -> REG_MULTI_SZ QWord -> 64-bit numeric values -> REG_QWORD
Команды ля работы с реестром:
Get-PSDrive - список дисков Get-PSDrive -PSProvider Registry - список дисков от провайдера Registry Set-Location HKLM:\SOFTWARE - перейти HKLM:\SOFTWARE cd HKLM:\SOFTWARE - перейти HKLM:\SOFTWARE New-PSDrive -name HKCR -PSProvider registry -root HKLM:\SOFTWARE\ClassesDir HKCR: - создание нового диска HKCR ссылкой на HKEY_LOCAL_MACHINE\SOFTWARE\Classes Remove-PSDrive HKCR - удаление созданного диска производится командой Remove-PSDrive Get-ChildItem HKLM: -recurse -include *PowerShell* -поиск в реестре, найдет все где присутствует ключевое слово *PowerShell* New-Item -Path HKCU:\Environment\NewKey - создаем новый элемент New-Item —type Directory HKCU:\Environment\NewKey—1 - создаем новый элемент md HKCU:\Environment\NewKey—2 - создаем новый элемент Set-Location HKCU:\Environment - переходим в "папку" Copy-Item -Path HKCU:\Environment\NewKey .\NewKey2 - создаем копию созданного ранее ключа Rename-Item -Path HKCU:\Environment\NewKey2 -NewName RenameKey2 - переименовываем Remove-Item -Path HKCU:\Environment\NewKey - удаляем старый del HKCU:\Environment\NewKey - удаляем старый New-ItemProperty -PropertyType String -Path HKCU:\Environment -name NewKey -Value "NewParam" - создаем новое значение Set-ItemProperty -Path .\ -name "NewParam" -Value "UpdatedParam" - меняем значение у существующего элемента Rename-ItemProperty -Path .\ -name "NewParam" -NewName "TestParam" - переименовываем параметр Remove-ItemProperty -Path .\ -name newkey - Удаляем параметр