Рассмотрим элементы реестра подробнее.
Корневые разделы
Все параметры реестра Windows 7 сгруппированы в пяти основных разделах (разделы еще называют ключами), называемых корневыми:
1. HKEY_CLASSES_ROOT.
2. HKEY_CURRENT_USER.
3. HKEY_LOCAL_MACHINE.
4. HKEY_USERS.
5. HKEY_CURRENT_CONFIG.
ПРИМЕЧАНИЕ
На самом деле в реестре есть еще один раздел. Он называется HKEY_PERFOMANCE_DATA. Этот раздел хранит сведения о производительности, используется системой и не предназначен для редактирования «вручную». Доступ к нему можно получить только программно.
Все корневые разделы начинаются со слова HKEY и содержат подразделы. Корневые разделы нельзя удалить или переименовать.
Практическое занятие
Выделите мышкой любой из корневых разделов и щелкните правой кнопкой мыши для вызова контекстного меню. Убедитесь, что команды меню Удалить и Переименовать заблоки рованы.
Рассмотрим каждый корневой раздел.
HKEY_CLASSES_ROOT
Раздел HKEY_CLASSES_ROOT включает в себя информацию о зарегистрированных в системе расширениях файлов, связи между расширениями файлов и программами, которые должны работать с данными файлами.
Также раздел содержит информацию о ActiveX-элемен тах, хранит список библиотек типов и много другой системной информации. Например, в этом разделе хранится информация о том, что при двойном щелчке на файле с расширением TXT должен запуститься Блокнот.
У данного раздела имеется псевдоним HKCR, используемый в сценариях и программах. В большинстве случаев данный раздел представляет интерес только для очень опытных программистов.
HKEY_CURRENT_USER
Раздел HKEY_CURRENT_USER содержит информацию о пользователе, работающем с Windows 7 в текущем сеансе, а также о различных настройках системы, относящихся к текущему пользователю: вид Рабочего стола, настройки экрана, принтера, параметры применяемых программ.
Псевдоним у данного раздела HKCU. Данный раздел является наиболее используемым в настройках. Большинство описываемых в этой книге параметров находится именно в данном разделе.
HKEY_LOCAL_MACHINE
Раздел HKEY_LOCAL_MACHINE хранит информацию о конфигурации компьютера (программной и аппаратной), не зависящей от конкретного пользователя. Настройки в этом разделе действительны для всех пользователей данного компьютера.
В качестве псевдонима для данного раздела используется HKLM.
Интересно отметить, что подраздел HKEY_LOCAL_MACHINE\SOFTWARE\Classes является практически полной копией корневого раздела HKEY_CLASSES_ROOT.
Данный раздел является вторым по популярности при ручных настройках. Существует множество параметров, которые работают в разделах HKLM и HKCU, но тем не менее рекомендуется менять настройки для отдельного пользователя в разделе HKCU и не трогать настройки для всех пользователей без острой необходимости.
HKEY_USERS
Раздел HKEY_USERS (псевдоним HKU) содержит информацию о профилях всех пользователей данного компьютера.
Данный раздел практически никогда не используется пользователями. Следует отметить связь данного корневого раздела с разделом HKEY_CURRENT_USER, который фактически является копией подраздела корневого раздела HKEY_USERS, хранящего сведения о текущем пользователе.
Назначение этого раздела нередко интерпретируется неправильно. Разберем его составляющие чуть подробнее. В данном разделе можно увидеть несколько подразделов определенного образца (рис. 1.3).
Рис. 1.3. Подразделы раздела HKEY_USERS
HKEY_USERS\.DEFAULT
Некоторые пользователи ошибочно считают, что раздел HKEY_USERS\.DEFAULT можно использовать для импортирования параметров HKCU, рассчитывая применить их ко всем пользователям. Возможно, что в некоторых случаях это сработает. Однако HKEY_USERS\.DEFAULT скорее относится к настройкам, регулирующим процессы до входа пользователя в систему (например, раскладка клавиатуры по умолчанию).
HKEY_USERS\S-[длинный набор цифр]
Также в разделе HKEY_USERS может находиться несколько подразделов с наборами цифр. Длинный набор цифр – это SID (идентификатор безопасности). Идентификатор безопасности присваивается каждой учетной записи, поэтому количество таких подразделов зависит от количества пользователей, когда-либо входивших в систему. Чтобы узнать, свой SID в системе, можно использовать несколько способов. Например, можно запустить утилиту командной строки whoami.exe, которая входит в состав Windows 7, с параметром /user:
whoami /user
Для выполнения этой команды сначала запустите интерпретатор командной строки командой Пуск ► Все программы ► Стандартные ► Выполнить, введя в поле Открыть появившегося окна команду cmd.exe или просто cmd. Откроется окно, в котором и нужно ввести вышеописанную команду, нажав после ее ввода клавишу Enter (рис. 1.4).
Также можно посмотреть раздел HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList, который содержит список всех SID в виде подразделов. Просмотрите все подразделы и ищите в них параметр ProfilelmagePath. Ваш SID тот, в котором значение этого параметра совпадает с именем, под которым вы входите в систему (рис. 1.5).
Рис. 1.4. Использование командной строки Windows
Рис. 1.5. Просмотр параметра ProfileImagePath
HKEY_CURRENT_CONFIG
Корневой раздел HKEY_CURRENT_CONFIG (псевдоним HKCC) хранит информацию о настройках оборудования, которое используется компьютером в текущем сеансе работы. Он также является копией подраздела HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware-Profiles. Этот раздел практически не используется разработчиками в программах и сценариях.
Итак, мы рассмотрели все виды корневых разделов. Каждых из них имеет множество вложенных разделов (подразделов). Их количество у каждого компьютера различно. Это связано с тем, что каждый пользователь устанавливает на компьютер свои любимые программы и игры. Если установка приложения происходит через специальные установочные программы – инсталляторы (Setup.exe, Install.exe и т. п.), то в реестр добавляются новые подразделы и параметры. Позже вы на учитесь находить подобные разделы и изменять их по своему желанию.
Физическое расположение реестра
Сам реестр физически состоит из нескольких файлов, расположенных в папке %SystemRoot%\System32\Config. Часть файлов для раздела HKEY_CURRENT_USER хранится в папке %SystemRoot%\Profiles\Имя_пользователя. Данные файлы являются защищенными и не представляют практического интереса для пользователя.
Если вам пока непонятно что означает %SystemRoot% – читайте дальше – в следующем разделе мы поговорим о том, что это такое.
Типы параметров
Параметры являются второй важной частью реестра после разделов. Каждый параметр имеет свои имя, значение и тип значения. Рассмотрим наиболее часто используемые типы данных.
► REG_BINARY – двоичные данные (Binary Value) представляют собой набор двоичных данных, доступных для редактирования в шестнадцатеричном формате. Подобный тип данных используется для хранения сведений об аппаратных ресурсах.
► REG_DWORD – целое число (DWORD Value) может задаваться в двоичном, десятичном и шестнадцатеричном форматах. Это один из самых применяемых типов параметров. Очень часто он работает в качестве своеобразного переключателя: 1 – включение (True)/0 – выключение (False). В реестре Windows 7 присутствует два вида DWORD: 32-битное значение и 64-битное значение.
► REG_EXPAND_SZ – расширенная строка (Expandable String Value) используется для ссылок на файлы. Кроме произвольного текста значение параметра такого типа может включать в себя специальные переменные. Во время обработки системой они могут заменяться на определенные значения, например пути к папкам. В таком качестве часто используются следующие переменные: