Реестр Windows 7

Александр Климов
Реестр Windows 7

Вступление. Знакомство с реестром

О чем эта книга

Прежде чем читатель начнет изучать очень интересную тему, связанную с настройками Windows, нужно рассказать, о чем эта книга.

Мое знакомство с реестром началось с Windows 98, хотя знакомство с компьютером состоялось гораздо раньше. Но до поры до времени компьютер использовался мной в качестве игровой приставки. Постепенно мне захотелось лучше разобраться в нем, и я стал изучать возможности операционной системы. И однажды я узнал, что для решения какой-то проблемы нужно было внести изменения в реестр. Опыт оказался удачным, и меня заинтересовала данная тема. После того, как я стал заниматься программированием, снова обнаружилось, что для решения определенных задач понадобится реестр.

С тех пор я стал собирать всю информацию о настройках в реестре. Сначала я сохранял свои находки в обычных текстовых документах. Но число записей стало угрожающе увеличиваться, и найти нужный параметр становилось все сложнее. И тогда я создал электронный справочник по реестру в формате справки помощи CHM. Без ложной скромности могу заявить, что данный справочник является практически единственным по этой теме в России. Количество загрузок справочника при каждом обновлении исчисляется десятками тысяч. Сам справочник, как живой организм, постоянно обновляется и меняется. Я не ставил своей задачей создать энциклопедию настроек реестра. Мне было интересно, чтобы справочник отражал состояние дел на текущий момент. Вот почему я периодически провожу чистку справочника и удаляю устаревшие параметры, которые появились в Windows 98, но уже не актуальны в Windows 7. В качестве примера давайте вспомним внешний вид Internet Explorer 4.0/5.5/6.0. Может, вы помните, что у этого браузера в верхнем правом углу крутился анимированный логотип IE при подключении к какому-либо ресурсу. При помощи настроек в реестре можно было создать собственный анимированный логотип. Но начиная с Internet Explorer 7 интерфейс у браузера поменялся, и логотип в углу исчез. И данная настройка для пользователей Windows Vista и Windows 7 стала бесполезной.

С тех пор как справочник оказался популярен у пользователей, ко мне стали регулярно приходить письма с вопросами, что нужно подправить в реестре, чтобы добиться какого-нибудь эффекта. В глазах многих пользователей реестр выглядел некой волшебной палочкой, с помощью которой можно сделать в Windows все, что пожелаешь. Прочитав эту книгу, вы поймете, что с помощью реестра можно достичь многого, но в то же время избавитесь от иллюзий, будто он позволит сделать все, что душа пожелает.

Должен заметить, что я не пытался написать некую энциклопедию по реестру Windows 7. Моя задача была скромнее – описать новые параметры, которые появились в Windows 7, а также рассказать о наиболее интересных и используемых настройках реестра. Кроме того, я хочу дать немного материала по теории для дальнейшего изучения реестра. Это позволило мне сократить размеры книги, которую вы можете использовать и как удобный справочник в своей работе.

Для кого эта книга

Реестр – это один из важных компонентов операционной системы. Бездумное ковыряние в нем может погубить систему на вашем компьютере. Поэтому эта книга предназначена для опытных пользователей, которые уже достаточно хорошо освоили Windows и хотят повысить свою квалификацию. Одним из критериев вашей опытности может послужить вопрос: можете ли вы самостоятельно переустановить операционную систему Windows с нуля? Если на данный вопрос вы ответили утвердительно, то вы готовы к изучению реестра. Если нет, то лучше пока воздержаться от изучения данной темы.

Для изучения излагаемого материала вам понадобятся некоторые дополнительные программы, описание которых вы найдете в соответствующих главах книги. Многое из того, о чем говорится в книге, уже есть в Windows 7.

Кроме того, вы должны иметь возможность запуска программ с правами администратора. Как правило, на своем домашнем компьютере вы являетесь единственным и главным пользователем системы и имеете соответствующие права. На работе, если вы не системный администратор, они могут быть урезанны по соображениям безопасности. В этом случае вряд ли ваш системный администратор согласится на их пересмотр, и вам придется изучать реестр только дома.

Итак, теперь вы подготовлены к изучению нового материала. Вперед, к новым знаниям!

От издательства

Ваши замечания, предложения, вопросы отправляйте по адресу электронной почты comp@piter.com (издательство Питер, компьютерная редакция).

Мы будем рады узнать ваше мнение!

На сайте издательства http://www.piter.com вы найдете подробную информацию о наших книгах.

Глава 1. Приступаем к изучению реестра Windows 7

Прежде чем мы начнем разбирать примеры с настройками Windows в реестре, надо понять, а что такое вообще реестр.

Реестр – это база данных Windows. Она содержит сведения, без которых нормальная работа системы невозможна. Здесь есть данные об оборудовании и программах и их параметрах, о профилях учетных записей пользователей компьютеров. Операционная система и другое ПО постоянно работают с реестром. Реестр, кроме того, является частой мишенью для вредоносного ПО.

Реестр является важным компонентом, в который не следует вносить изменения без крайней нужды. Но тем не менее в некоторых случаях без вмешательства в реестр не обойтись.

ВНИМАНИЕ

Особо хочу обратить ваше внимание на то, что перед внесением изменений в реестр нужно обязательно делать его резервные копии или создавать точку восстановления системы. Изменяя реестр, редактируйте лишь те его параметры, которые вам знакомы, и лишь тогда, когда это вам действительно нужно.

На своем опыте я не раз убеждался в правильности этих рекомендаций.

Редактор реестра

Итак, если реестр – это база данных Windows, то нужен определенный инструмент для работы с данной базой. Таким инструментом в Windows является Редактор реестра. Обратите внимание, что ярлык данной программы вы не найдете на Рабочем столе, а также в меню кнопки Пуск. Обычный пользователь не должен знать о существовании данной программы. Поэтому поступим следующим образом. Нажмем кнопку Пуск и в строке поиска наберем слово regedit. Вы увидите в разделе Программы пункт regedit.exe (рис. 1.1). Это и есть файл редактора реестра Windows, которым мы будем пользоваться на протяжении всей книги.

Рис. 1.1. Поиск редактора реестра


Щелкаем на ссылке regedit.exe, чтобы запустить программу. Сначала вы увидите (при стандартных настройках безопасности) окно Контроля учетных записей пользователей UAC с предупреждением. Мы должны согласиться с сообщением, то есть нажать кнопку OK, и наконец-то увидим редактор реестра (рис. 1.2).


Рис. 1.2. Редактор реестра


ПРИМЕЧАНИЕ

Еще один способ запуска редактора реестра или любых других программ, имена исполняемых файлов которых вы знаете, заключается в использовании стандартного средства запуска программ. Выполните команду: Пуск Все программы Стандартные Выполнить. В поле Открыть появившегося окна введите regedit – и редактор реестра будет открыт.

Запуск редактора реестра возможен при наличии соответствующих прав. Запуск программы, требующей повышения привилегий, лишний раз говорит о том, как опасна может быть программа в руках неумелых пользователей.

Теперь рассмотрим саму программу. Ее интерфейс напоминает Проводник. Слева вы видите иерархическое дерево со значками папок – это разделы реестра. Как и в случаях с обычными папками, которые могут содержать вложенные папки, разделы могут иметь вложенные подразделы. В правой части редактора мы видим названия параметров, тип параметров и их значения.

Рассмотрим элементы реестра подробнее.

Корневые разделы

Все параметры реестра 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) используется для ссылок на файлы. Кроме произвольного текста значение параметра такого типа может включать в себя специальные переменные. Во время обработки системой они могут заменяться на определенные значения, например пути к папкам. В таком качестве часто используются следующие переменные:

• %systemroot% – путь к каталогу в котором операционная система хранит свои файлы (например, каталог C:\Windows).

%windir% – похоже на предыдущую переменную. Ее отличие от %systemroot% заключается в том, что переменную %systemroot% переопределить нельзя, а каталог, к которому ведет переменная %windir%, можно изменить с помощью окна Переменные среды (Панель управления ► Система и безопасность ► Система ► Дополнительные параметры системы ► вкладка Дополнительно ► кнопка Переменные среды).

• %systemdrive% – заменяет собой букву системного диска (как правило, диск С:).

• %userprofile% – подставляет путь к каталогу, хранящему профиль текущего пользователя.

• %programfiles% – заменяет собой путь к папке, в которую Windows устанавливает все программы (как правило, C:\Program Files).

• %username% – подставляет имя текущего пользователя, работающего с системой.

• computername% – подставляет имя компьютера (используется при обращении к компьютеру по сети).

► REG_MULTI_SZ – многострочный текст (Multi-String Value) обычно используется для представления списков.

► REG_SZ – текстовая строка (String Value). Это один из самых распространенных типов данных в реестре.

ПРИМЕЧАНИЕ

Существует еще несколько типов данных, используемых в реестре, которые нельзя создать с помощью редактора реестра. Ресурсы этих типов создают программным способом: REG_FULL_RESOURCE_DESCRIPTOR, REG_LINK, REG_NONE, REG_RESOURCE_LIST.

Основные приемы работы с редактором реестра

С помощью редактора реестра мы можем создавать новые разделы (кроме корневых), новые параметры, переименовывать уже существующие разделы и параметры, изменять значения параметров, удалять разделы (кроме корневых) и параметры. Также мы можем создавать архивные копии реестра и восстанавливать реестр из копий. При работе с редактором реестра нужно быть особенно внимательными.

ВНИМАНИЕ

У редактора нет команды отмены последнего действия и все ваши операции необратимы. Поэтому, если вы случайно удалили раздел и забыли, как он назывался, вам уже никто не поможет. Никто – кроме вас самих, если вы, прежде чем выполнять какую-либо операцию с реестром, создадите его архивную копию.

Создание архивной копии реестра

Для того чтобы создать архивную копию реестра, выполните в окне редактора реестра команду Файл Экспорт.

Появится окно для выбора параметров сохранения файла (рис. 1.6).


Рис. 1.6. Создание архивной копии реестра


В данном окне, в поле Имя файла следует указать имя файла, в который будет осуществлен экспорт реестра. В группе параметров Диапазон экспорта следует выбрать Весь реестр или Выбранная ветвь, а в окне выбора места хранения файла выбрать нужное расположение, в нашем случае это – Рабочий стол. После нажатия кнопки Сохранить реестр будет экспортирован в указанный файл.

Создавая архивную копию реестра, помните о том, что он имеет весьма значительный объем – около 100 Мбайт или даже больше. Операции экспорта реестра выполняются на современных компьютерах до нескольких минут.

На практике обычно создают архивные копии не всего реестра, а тех ветвей, которые редактируют.

Для того чтобы экспортировать только выбранный раздел реестра, достаточно щелкнуть по нему правой кнопкой мыши и выбрать из контекстного меню команду Экспортировать. Появится уже знакомое нам диалоговое окно, в котором переключатель автоматически будет стоять в позиции Выбранная ветвь и в текстовом поле будет указан полный путь к разделу.

В случае неправильного поведения системы после изменения параметров той или иной ветви вы можете быстро ее восстановить, воспользовавшись командой Файл ► Импорт.

Еще один способ обезопасить себя от проблем, связанных с модификацией реестра, – создание точки восстановления системы.

Для того чтобы создать точку восстановления системы, выполните команду Пуск ► Панель управления ► Система и безопасность ► Система ► Защита системы и в появившемся окне (рис. 1.7) нажмите кнопку Создать.

В появившемся после этого окне следует ввести название точки восстановления и нажать кнопку Создать.

После того как точка восстановления будет создана и вы произведете изменения в реестре, которые нужно будет отменить, вы сможете восстановить систему до нужной точки восстановления. Для этого вызовите средство Восстановление системы командой Пуск ► Все программы ► Стандартные ► Служебные ► Восстановление системы (рис. 1.8).

Окно Восстановление системы построено в виде мастера, который проведет вас по шагам, необходимым для запуска процесса восстановления.


Рис. 1.7. Создание точки восстановления системы


Рис. 1.8. Восстановление системы


ВНИМАНИЕ

Всегда перед модификацией создавайте архивные копии реестра или точку восстановления системы.

Кстати, сохраненные резервные копии реестра желательно не только держать на том же диске, на котором находится система, но и скопировать их на другие надежные носители: другой компьютер, компакт-диск, флешка.

 
Создание нового раздела

Чтобы создать новый раздел, нужно выбрать в левом окне тот, внутри которого вы хотите произвести изменение. Далее выбираем в меню Правка Создать Раздел. В левой части редактора будет создан новый раздел, готовый к редактированию, и вы можете сразу задать его имя. Для выполнения этой процедуры можно также использовать контекстное меню.

Практическое занятие

Запустите редактор реестра. В левом окне программы раскройте раздел HKEYCURRENTUSER. Далее найдите в нем подраздел Software и щелкните на нем правой кнопкой мыши для вызова контекстного меню. Выберите в меню команды Создать ► Раздел. По умолчанию будет создан раздел Новый раздел #1. Сразу присвойте ему новое имя. Напечатайте новое имя для раздела, например Test, и нажмите Enter (рис. 1.9). Если вы случайно переключились на другое окно и имя созданного раздела стало недоступным для редактирования, то не пугайтесь. Щелкните для выделения созданный раздел Новый раздел #1 и в контекстном меню выберите пункт Переименовать (или нажмите клавишу F2). Имя раздела станет доступно для редактирования, и вы сможете его задать.


Рис. 1.9. Создание нового раздела


1  2  3  4  5  6  7  8  9  10  11 
Рейтинг@Mail.ru