Общие сведения о реестре Microsoft Windows

Назад    Вниз

Краткое определение реестра Windows

Реестр Windows (Windows Registry) представляет собой реляционную базу данных, в которой аккумулируется вся необходимая для нормального функционирования ПК информация о настройках операционной системы, а также об используемом совместно с Windows программном обеспечении и оборудовании. Все хранящиеся в реестре данные представлены в стандартизированной форме и четко структурированны согластно предложенной разработчиками Windows иерархии.

Где расположен реестр?

Прежде чем мы приступим к рассмотрению внутренней архитектуры реестра Windows. необходимо определиться с тем, каким образом реестр представлен на физическом уровне. В случае с операционными системами семейства Windows 9x/Me все было относительно просто - сам реестр состоял всего лишь из трех файлов: system.dat, содержащего сведения о самой системе и ее компонентах; user.dat, включающего данные о настройках пользователя, и policy.pol, в котором описывались системные политики для многопользовательской среды, - причем все эти файлы по умолчанию хранились в папке %systemroot%. Реестр в NT - совместимых системных платформах - а к ним относятся и Windows NT4, и Windows 2000, и Windows XP устроен несколько сложнее. При редактировании системного реестра NT - совместимых системных платформ в специальных программах он представляется нам в виде единой базы данных, имеющей жесткую иерархическую структуру. Однако на физическом уровне реестр NT - совместимых неоднороден и состоит из множества файлов, каждый из которых отвечает за собственный объем представленной в этой базе информации. Прежде всего, следует учесть тот факт, что некоторые из отображаемых в реестре сведений вообще не сохраняются на диске в виде физических файлов, а помещаются в память ПК в процессе его загрузки и утрачиваются в момент отключения питания. Такие разделы реестра получили название энергозависимых (volatile); на практике это означает, что данные разделы являются управляемыми операционной системой в пределах одного сеанса, то есть начиная с момента загрузки Windows и заканчивая моментом ее выгрузки. В частности, к энергозависимым разделам реестра относится ветвь HKEY_LOCAL_MACHINE\HARDWARE, в которой аккумулируются сведения о подключенном в системе оборудовании и назначенных различным устройствам ресурсах: запросах на прерывание (IRQ), каналах прямого доступа к памяти (DMA) и диапазонах ввода - вывода (I/O Range). Поскольку опрос, инициализация устройств и динамическое распределение ресурсов производятся именно в ходе загрузки Windows, все эти сведения хранятся непосредственно в памяти ПК: при следующем запуске машины состав оборудования может оказаться уже другим.

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

Архитектура реестра Windows

Реестр Windows имеет многоуровневую структуру, состоящую из четырех нисходящих логических ступеней. К первой, самой верхней в иерархии реестра, ступени относятся так называемые ветви (Hive Keys), которые принято обозначать по их английскому наименованию аббревиатурой HKEY_, где за символом подчеркивания следует обычно название самой ветви. В разных версиях Windows колличество ветвей разное.

Второй ступенью в иерархической системе реестра являются так называемые разделы, или ключи (Keys). В Windows нет какого - либо единого стандарта в обозначении ключей системного реестра, поэтому их имена были назначены разработчиками исходя из типа данных, представленных внутри ключа. Ключи отображаются в программе редактор реестра (RegEdit) в виде подпапок ветвей HKEY_. Следует понимать, что не существует также каких - либо жестких ограничений, сопоставляющих ключам строго определенный тип данных. Ключи в иерархии реестра служат исключительно для облегчения доступа к информации и являются одним из средств ее упорядочевания. Функционально ключи можно разделить на две условные категории: определяемые системой, то есть те, имена которых назначены операционной системой, причем изменение этих имен может привести к отказу или сбоям в работе Windows, и определяемые пользователем - имена этих ключей могут быть изменены администратором ПК, и такие изменения не приведут к каким - либо фатальным последствиям.

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

Последней ступенью в иерархической структуре системного реестра являются параметры (Values) - элементы реестра, содержащие саму информацию, определяющую работу операционной системы и ПК в целом. Параметры представляют собой цепочку имя параметра - значение параметра и различаются согластно типу данных, хранимых в качестве значений.

Пять основных ветвей реестра Windows

HKEY_CLASSES_ROOT

Ветвь HKEY_CLASSES_ROOT, обычно обозначаемая в технической документации аббревиатурой HKCR, включает в себя ряд подразделов, в которых содержатся сведения о расширениях всех зарегистрированных в системе типов файлов и данные о COM - серверах, зарегистрированных на ПК. Фактически, данную ветвь с функциональной точки зрения можно считать аналогом ключа HKEY_LOCAL_MACHINE\Software, поскольку здесь собраны все необходимые операционной системе данные о файловых ассоциациях.

HKEY_CURRENT_USER

В ветви HKEY_CURRENT_USER, обозначаемой в документации аббревиатурой HKCU, содержитя информация о пользователе, ведущем на ПК текущий сеанс работы, который обслуживается реестром. В ее подразделах находится информация о переменных окружения, группах программ данного пользователя, настройках рабочего стола, цветах экрана, сетевых соединениях, принтерах и дополнительных настройках приложений (переменные окружения используются в Windows в сценариях, записях реестра и других приложениях в качестве подстановочных параметров). Эта информация берется из подраздела Security ID (SID) ветви HKEY_USERS для текущего пользователя. Фактически, в данной ветви собраны все сведения, относящиеся к профилю пользователя, работающего с Windows в настоящий момент.

HKEY_LOCAL_MACHINE

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

HKEY_USERS

Ветвь HKEY_USERS (HKU) содержит подразделы с информацией обо всех профелях пользователя данного ПК. Один из ее подразделов всегда соотносится с подразделом HKEY_CURRENT_USER (через параметр Security ID (SID) пользователя). Другой подраздел, HKEY_USERS\DEFAULT, содержит информацию о настройках системы в момент времени, предшествующий началу сеанса текущего пользователя.

HKEY_CURRENT_CONFIG

Ветвь HKEY_CURRENT_CONFIG (HKCC) содержит подразделы с информацией обо всех профилях оборудования, используемого в данном сеансе работы. Профили оборудования позволяют выбрать драйверы поддерживаемых устройств для заданного сеанса работы (например, не использовать активацию порта док - станции переностного ПК, когда он не подключен к станции). Эта информация берется из подразделов HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet.

Инструментальные средства управления реестром

Редактор реестра (Registry Editor)

Эффективное взаимодействие с реестром Windows невозможно без использования специальных средств, призванных облегчить выполнение этой задачи. Основным и, пожалуй, наиболее известным инструментом администрирования реестра Windows является программа Редактор реестра (Registry Editor), входящая в комплект поставки операционной системы.

Программа Редактор реестра является стандартной утилитой, входящей в комплект поставки Windows, и предназначена для непосредственного изменения настроек системного реестра. Для того чтобы запустить программу на исполнение, необходимо нажать кнопку Пуск - Выполнить..., затем в поле Открыть: набрать команду regedit и щелкнуть мышью на кнопке OК.









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









В нижней части Редактора реестра расположена строка состояния, демонстрирующая размещение выделенного вами элемента реестра. Включение и отключение строки состояния осуществляется путем установки или снятия флажка Строка состояния в меню Вид.

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

  • меню Файл (Реестр) позволяет осуществлять операции экспорта - импорта файла реестра и его отдельных компонентов, выводить содержимое какого - либо фрагмента реестра на печать или открывать для редактирования файлы реестра других ПК, расположенных в локальной сети;
  • меню Правка позволяет выполнять операции создания, удаления, переименования логических элементов реестра, выполнять процедуры поиска, настраивать режимы безопасности;
  • меню Вид управляет настройками интерфейса Редактора реестра;
  • меню Избранное позволяет устанавливать закладки на различные разделы и подразделы реестра для последующего быстрого перехода к ним;
  • меню Справка вызывает встроенную справочную систему программы Редактор реестра.

Об использовании команд меню будет подробно рассмотренно далее.

Встроенные мастера Редактора реестра

В программе Редактор реестра предусмотрен специальный набор мастеров, позволяющих редактировать параметры, хранящие значения с различными типами данных. Вызов окна соответсвующего мастера осуществляется по двойному щелчку мыши на параметре, отображаемом в правой части рабочего окна Редактора реестра. Мастера позволяют изменять две основные характеристики параметров реестра: их имя и значение, причем значение может быть изменено только с сохранением текущего типа данных. Другими словами, параметру, значение которого представляет собой строковую переменную (тип REG_SZ), невозможно присвоить значение бинарного типа (REG_BINARY). Все встроенные мастера Редактора реестра поддерживают стандартные операции с выделенным фрагментом. Вы можете либо записывать в качестве значений параметров новые данные, либо редактировать существующие.

Справочная система Редактора реестра

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

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

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

Общие принципы работы с реестром Windows

Просмотр разделов и подразделов

В целом механизм просмотра разделов и подразделов при помощи Редактора реестра схож с алгоритмом работы пользователя в программе Проводник. Рассмотрим процедуру просмотра разделов и подразделов реестра на примере ветви HKEY_LOCAL_MACHINE (HKLM):

  1. Запустите Редактор реестра и щелкните мышью на значке «+», расположенном слева от обозначения ветви HKEY_LOCAL_MACHINE (HKLM) в Панели разделов;
  2. В раскрывшемся дереве ключей щелкните мышью на значке «+» слева от имени ключа, например ключа SOFTWARE, - вы увидите список содержащихся в данном ключе подразделов;
  3. Щелкните мышью на обозначении подраздела текущего ключа (в рассматриваемом нами случае ключ SOFTWARE), после чего его значок примет вид открытой папки;
  4. В Панели параметров отобразится список всех параметров и их значений, содержащихся в данном подразделе.

Из описанного выше алгоритма следует, что нераскрытые разделы обозначаются значком закрытой папки и значком "+", в таких разделах все подразделы скрыты; раскрытые разделы, напротив, отображаются посредством значка открытой папки и помечены значком "-", их содержимое демонстрируется в Панели разделов в виде древовидной иерархической структуры. Чтобы развернуть нераскрытый раздел, необходимо или щелкнуть мышью на значке "+", или дважды щелкнуть мышью на значке папки или его названии, или щелкнуть правой кнопкой мыши на его названии и выбрать в появившемся контекстном меню пункт Развернуть. Аналогично, чтобы свернуть раскрытый раздел, вы можете или щелкнуть мышью на значке "-", или дважды щелкнуть мышью на значке папки или его названии, или щелкнуть правой кнопкой мыши на его названии и выбрать в появившемся контекстном меню пункт Свернуть.

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

Поиск информации в реестре

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









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

  1. В поле Образец (Найти) введите ключевое слово, соотвествующее имени искомого параметра, ключа или подраздела.
  2. В обдасти Просмотреть (Просматривать при поиске) установите флажки, соответствующие диапозону поиска. Доступны варианты названия (имена) разделов, названия (имена) параметров и значения параметров.
  3. Если это необходимо, установите флажок Искать только строку целиком. В случае, если флажок сброшен, в диапозон поиска будут включены все вхождения, содержащие указанное вами ключевое слово.
  4. Щелкните мышью на кнопке Найти далее.

Быстрый переход к выбранному разделу реестра

Специально на тот случай, если вы регулярно обращаетесь к одному и тому же разделу реестра для просмотра или редактирования хранящихся в нем данных, в составе Редактора реестра имеется механизм хранения ссылок на избранные разделы, аналогичный папке Избранное в Проводнике Windows или браузере Microsoft Internet Explorer. Вы можете воспользоваться этой функциональной возможностью Редактора реестра следующим образом:

  1. Перейдите в раздел реестра, на который вы хотите установить закладку, и выберите команду меню Избранное - Добавить в Избранное;
  2. В окне Добавить в Избранное введите произвольное имя для добавляемой закладки и щелкните мышью на кнопке OК;
  3. Для быстрого перехода к требуемому разделу откройте меню Избранное и щелкните мышью на соответствующей закладке;
  4. Чтобы удалить закладку из папки Избранное, выберите команду меню Избранное - Удалить из Избранного, затем выберите щелчком мыши в открывшемся окне Удалить Избранное соответствующую ссылку и щелкните на кнопке OК.

Проверка и восстановление реестра

Экспорт файла реестра или его компонентов

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

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

Реестр и его компоненты экспортируются в файлы с расширением .reg (так называемые REG - файлы), содержащие набор инструкций, обрабатываемых программой Редактор реестра.

Для того чтобы экспортировать в файл системный реестр целиком или какой - либо из его компонентов, вам потребуется осуществить предложенную далее последовательность действий:

  1. Откройте программу Редактор реестра из главного меню Windows, выбрав команду Пуск - Выполнить..., набрав в открывшемся окне Запуск программы команду regedit и щелкнув мышью на кнопке OК;
  2. В Панели разделов Редактора реестра выберите ветвь, раздел или подраздел, которые вы хотите экспортировать, либо, если вы хотите записать в файл весь реестр целиком, выделите щелчком мыши корневой объект дерева реестра - Мой компьютер;
  3. Выберите команду меню Файл - Экспорт и в открывшемся диалоговом окне сохранения файла реестра укажите место его расположения и имя;
  4. Щелкните мышью на кнопке Сохранить.

Импорт файла реестра или его компонентов

Обладая полномочиями администратора на ПК вы можете в любой момент импортировать данные реестра либо одного из его компонентов из ранее сохраненного REG - файла. В общем случае для этого достаточто дважды щелкнуть на значке соответствующего REG - файла мышью. Однако помимо этого существует возможность импортировать файл реестра непосредственно из окна программы Редактор реестра. Для этого:

  1. Откройте программу Редактор реестра из главного меню Windows, выбрав команду Пуск - Выполнить..., набрав в открывшемся окне Запуск программы команду regedit и щелкнув мышью на кнопке OК;
  2. Выберите команду меню Файл - Импорт и в открывшемся диалоговом окне сохранения файла реестра укажите место его расположения и имя;
  3. Щелкните мышью на кнопке Открыть.

Примечание: При выполнении операции экспорта - импорта файлов реестра и его компонентов необходимо помнить о совместимости форматов REG - файлов. В частности, REG - файлы, созданные при помощи программы Редактор реестра версии 4 (операционная система Windows 2000), могут быть без проблем импортированны в Windows XP, что обеспечивается частичной совместимостью форматов реестра «снизу вверх», однако REG - файлы Windows XP не рекомендуется использовать в Windows 2000 во избежание возникновения ошибок. Форматы реестров Windows XP и Windows NT 4 Workstation/Server совместимы лишь частично: в любом случае импортировать и экспортировать компоненты реестра для использования в двух этих ОС не рекомендуется. Реестры Windows 9x/Me и Windows XP вообще несовместимы.

Операции над разделами и параметрами реестра

Добавление новых разделов и параметров реестра

При изменении или добавлении каких - либо параметров или разделов в реестр Windows следует соблюдать определенную осторожность, поскольку такие изменения могут повлиять на работу приложений Windows, используемого на ПК оборудования и компонентов самой операционной системы. Более того, если реестр будет поврежден и вы сразу этого не заметите, то поврежденная копия будет считаться последней рабочей копией (last known good configuration) - резервной копией, сохраняемой на случай повреждения реестра, - и это приведет к уничтожению ценной информации, необходимой для восстановления системы с помощью замены предыдущей рабочей копии. Также дефектная версия реестра может быть помещена в резервную копию системных компонентов программой восстановления Windows (Windows Restore) и затем скопирована на место работоспособной версии при аварийном восстановлении системы. Именно поэтому производить подобные манипуляции с реестром следует только в том случае, если вы твердо уверены, что представляете себе все возможные последствия этих действий.

Внимание: Перед выполнением операций по созданию, удалению, переименованию или перемещению ключей, подразделов и значений реестра создайте его резервную копию. Как создать резервную копию можно прочитать в предыдущем разделе Проверка и восстановление реестра.

Для того чтобы добавить в реестр новый ключ или подраздел, придерживайтесь предложенной ниже последовательности действий:

  1. Пользуясь стандартными приемами навигации по дереву реестра, раскройте в Панели разделов требуемую ветвь, ключ или подраздел, в котором вы хотите создать новый раздел или подраздел;
  2. Выберите команду меню Правка - Создать - Раздел, после чего рядом с изображением значка вновь созданного раздела в Панели разделов введите с клавиатуры имя создаваемого раздела;
  3. Убедитесь в том, что оно отличается от имен других подразделов того же уровня и что в нем нет обратной наклонной черты (\).

Для того чтобы создать новый параметр реестра, следует использовать предложенный далее алгоритм:

  1. Пользуясь стандартными приемами навигации по дереву реестра, раскройте в Панели разделов требуемую ветвь, ключ или подраздел, в котором вы хотите создать новый параметр;
  2. Выберите команду Правка - Создать и далее в открывшемся подменю выберите из предложенных вариантов тип создаваемого параметра: Строковый параметр, Двоичный параметр, Параметр DWORD, Мультистроковый параметр или Расширяемый строковый параметр;
  3. В Панели параметров щелкните правой кнопкой мыши на имени вновь создаваемого параметра, выберите в появившемся контекстном меню пункт Переименовать и введите с клавиатуры новое имя параметра;
  4. Дважды щелкните мышью на значке параметра и введите его значение.

Переименование раздела или параметра реестра

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

  1. Пользуясь стандартными приемами навигации по дереву реестра, выделите щелчком мыши в Панели разделов требуемую ветвь, ключ или подраздел, который вы хотите переименовать. Если вы хотите переименовать параметр, выделите его щелчком мыши в Панели параметров;
  2. Щелкните на выделенном объекте правой кнопкой мыши, выберите в появившемся контекстном меню пункт Переименовать и введите с клавиатурыновое имя параметра;
  3. Убедитесь в том, что оно отличается от имен других подразделов и параметров того же уровня и что в нем нет обратной наклонной черты (\).

Удаление существующего раздела или параметра реестра

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

  1. Перейдите в раздел реестра, подраздел или параметр которого вы собираетесь удалить, и выделите щелчком мыши интересующий вас подраздел или параметр;
  2. Выберите команду меню Правка - Удалить либо просто нажмите клавишу Del. На экране появится окно предупреждения, в котором вам будет предложено подтвердить операцию удаления. По нажатии на кнопку OК выделенный объект будет уничтожен;

Если вы выполните это действие, когда выбранным объектом является подраздел, он будет удален вместе со всеми его параметрами и подразделами. Если же выделен параметр, то будут удалены только этот параметр и информация, содержащаяся в нем.

Внимание: Для операции удаления в Редакторе реестра не предусмотрена процедура отмены (Undo), поэтому восстановить ошибочно удаленный раздел или параметр можно будет только из ранее сохраненной на диске резервной копии реестра. При выполнении операции удаления будьте предельно внимательны!

Копирование имени раздела

Если вам необходимо запомнить местонахождение какого - либо раздела или подраздела реестра, например для его быстрого поиска впоследствии либо для того, чтобы использовать его в документе, бывает очень затруднительно записывать вручную полный путь к искомому подразделу в иерархической структуре реестра Windows. Избежать этой утомительной процедуры позволяет небольшая «хитрость»: выделите щелчком мыши требуемый раздел или подраздел, нажмите ее правую кнопку и в появившемся контекстном меню выберите пункт Копировать имя раздела. Полное имя раздела, включая имя ветви, в которой он содержится, будет помещено в буфер обмена. Теперь вы можете без каких - либо затруднений вставить его в любой документ или текстовый файл.


Назад    Вверх