Описание реестра windows 7. Восстановление пароля администратора с помощью реестра. Изменяем меню кнопки "пуск"

Пожалуй каждый из вас слышал слово «реестр», однако вопросом «Что же это такое» задавались немногие, а зря. Ведь умение редактировать реестр может сэкономить кучу времени, денег, нервов и сил. Как запустить реестр операционной системы Windows 7, а так же основные способы его применения подробно рассматриваются в данной статье.

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

Аналогичная ситуация происходила во времена использования файловой системы Fat16, имевшей серьезные проблемы с быстродействием. Тогда и было принято решение ввести реестр для упорядочения информации. Со временем проблемы, решавшиеся реестром, исчезли, однако его оставили из-за обратной совместимости.

Реестр Windows – это иерархически построенная база данных параметров и настроек установленных программ.

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

Запустить реестр Windows 7 можно двумя способами:

  1. Пуск → в строке поиска пишем regedit → в найденных результатах открываем файл regedit.exe.
  2. Запускаем проводник → переходим в папку C:\Windows → ищем файл regedit.exe и открываем его.

Если вы все сделали правильно, откроется редактор реестра.

Редактирование реестра. Экспорт/Импорт

Перед нами – окно редактирования реестра Windows 7:

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

При работе с параметрами реестра нужно быть предельно внимательным и осторожным, ведь реестр – это нервная система Windows. Поэтому перед изменением каких-либо параметров рекомендуется создать копию реестра.

Жмем правой кнопкой мышки по разделу «Компьютер» — Экспортировать – задаем имя, проверяем диапазон экспорта (должно быть «Весь реестр») и указываем папку – жмем сохранить.

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

Для этого кликаем «Файл» – Импорт… — ищем сохраненный нами ранее Реестр.reg и нажимаем «Открыть». Все параметры вернутся к моменту создания копии.

Восстановление пароля администратора с помощью реестра

Для примера, показывающего какие задачи можно выполнить в реестре, рассмотрим такую проблему. Предположим, что вы забыли пароль от профиля администратора. Не беда! Его можно изменить с помощью реестра. Для этого нам понадобится установочный диск Windows 7.

  1. Загрузитесь с установочного диска. После копирования новых данных нам предложат выбрать язык. Оставляем все как есть и нажимаем «Далее».
  2. В новом окне выбираем « », после чего компьютер выполнит поиск установленных операционных систем.
  3. Может появиться окно с текстом «Обнаружены проблемы в параметрах загрузки». Игнорируем и выбираем операционную систему и жмем «Далее».
  4. В следующем окне выбираем самый нижний параметр «Командная строка»
  5. В командной строке набираем уже известную нам команду regedit и нажимаем Enter.
  6. В редакторе выделяем HKEY_LOCAL_MACHINE
  7. Затем, в меню Файл выбираем пункт «Загрузить куст».
  8. Переходим в папку С:\Windows\System32\config (буква может отличаться от привычной С). Нас интересует файл SYSTEM .
  9. Вводим любое имя раздела. Например: 888.
  10. Переходим в раздел HKEY_LOCAL_MACHINE\888\Setup . Кликаем 2 раза по параметру:
    • CmdLine , вводим cmd.exe и нажимаем ОК
    • SetupType , заменяем 0 на 2 и нажимаем ОК .

    В результате вышеперечисленных манипуляций должно получиться так:

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

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

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

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

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

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

А так как между разными ПК всегда были незначительные различия, импортированный с одного компьютера на другой.ini файл вряд ли будет работать.

С помощью реестра Microsoft урегулировал этот хаос, и эффектно вытащил все эти индивидуальные.ini файлы в единую, управляемую базу данных.

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

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

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

Файлы реестра Windows

Если вы используете современную версию Windows, я имею в виду ОС Windows 7, Windows 8 или 8.1 и Windows 10, то реестр, его структура, работа и возможность редактирования, там одинакова. Основные компоненты операционной системы меняются не очень часто.

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

Главная файлы реестра находятся в каталоге %systemroot%\System 32\Config\ и состоят из следующего:

  • SAM (Security Accounts Manager)
  • SECURITY
  • SOFTWARE
  • SYSTEM
  • DEFAULT
  • USERDIFF (used only for OS upgrades)

Кроме того, каждый пользователь имеет свои собственные файлы реестра:

  • %userprofile%\ntuser.dat
  • %userprofile%\AppData\Local\Microsoft\Windows\UsrClass.dat

Первый из этих файлов, файл ntuser.dat содержит основное программное обеспечение пользователя, настройки и параметры его конфигурации. Второй, UsrClass.dat, содержит дополнительные параметры, такие как взаимосвязь пользовательских файлов и информация о COM (модель составных объектов).

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

Ключи и значения реестра

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

Когда вы изменяете или создаете элементы в реестре вы создаете ключи и значения, но кФайлы реестра Windowsаковы между ними различия?

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

HKEY_CLASSES_ROOT (HKCR)

Этот раздел хранит информацию о зарегистрированных приложениях OLE-объектах ID классов и ассоциации файлов. Иногда вы можете увидеть его сокращенно, раздел HKCR. Он добавляет дубликаты ключей в уже существующий подраздел HKEY_CURRENT_USER\Software\Classes, и Windows будет использовать подраздел HKEY_CURRENT_USER\Software\Classes как основной.

HKEY_CURRENT_USER (HKCU)

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

HKEY_LOCAL_MACHINE (HKLM)

Этот раздел содержит все характерные для ПК, на котором установлена Windows настройки. Он содержит файлы SAM, SECURITY, SYSTEM и SOFTWARE. Пятый файл, HARDWARE, каждый раз при запуске компьютера создается заново и содержит информацию об обнаруженном оборудовании.

А также этот раздел содержит находящиеся в

%systemroot%\System 32\config\ файлы COMPONENTS и BCD, в которых хранится относящаяся к конфигурации загрузки данных на ПК информация.

В разделе реестра HKEY_LOCAL_MACHINE лишь несколько подразделов заслуживают внимания, так как этот набор файлов реестра наиболее часто изменяется и редактируется пользователями.

SAM

Раздел ключей Security Accounts Manager, как правило, отображается пустым, если пользователь не имеет соответствующих прав администратора. Он содержит сведения о безопасности для всех подключенных доменов ПК, в том числе локального домена, который также называют SAM.

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

SECURITY

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

SYSTEM

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

SOFTWARE

Этот раздел содержит параметры для текущей установки Windows, установленных программ и приложений и ключи поставщиков программного обеспечения, включает подразделы для расширений файлов, MIME типы и объектные идентификаторы класса и интерфейса (такие как ActiveX).

HKEY_USERS (HKU)

HKEY_CURRENT_CONFIG (HKCC)

Ключи HKCC содержат информацию, собранную во время загрузки компьютера и Windows. Эта информация относится только к текущей сессии и удаляется при выключении компьютера.

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

HKEY_PERFORMANCE_DATA

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

Типы значений реестра

При создании нового параметра реестра вам будут представлены следующие опции:

  • REG_BINARY: этот тип ключей хранит необработанные двоичные данные.
  • REG_DWORD: 32-разрядное целое число переменной длины.
  • DWORDS: обычно используется для определения параметров настройки драйверов устройств и настройки программного обеспечения.
  • REG_SZ: строковое значение фиксированной длины.
  • REG_EXPAND_SZ: расширяемая длина строкового значения, также используется для переменные среды.
  • REG_MULTI_SZ: мульти-строка, которая может содержать список значений, обычно через запятую или пробел.
  • REG_RESOURCE_LIST: список ресурсов, вложенных массивов, используемых драйверов устройств.
  • REG_RESOURCE_REQUIRMENTS_LIST: список ресурсов оборудования, используемые драйвера устройств.
  • REG_FULL_RESOURCE_DESCRIPTOR: вложенные, используемые для хранения списков ресурсов физических устройств, массивы.
  • REG_LINK: символьная ссылка (ЮНИКОД) в следующий ключ реестра, что определяет корневой ключ и путь к целевому ключу.
  • REG_NONE: данные, не имеющие определенного типа.
  • REG_QWORD: переменные 64-битной длины.

Примечание . Между реестрами 32-разрядной (x86) и 64-разрядной (x64) ОС Windows существует некоторое различие. 64-разрядный параметр qword не поддерживается в 32-разрядных версиях операционной системы Windows. Кроме того, реестр работает с 32-разрядными и 64-разрядными ключами настолько умным образом, что файловая система обрабатывает несколько версий одних и тех же dll файлов, но сохраняет совместимость, которую вы можете найти в секции реестра HKEY_LOCAL_MACHINE\Software\WOW6432Node.

.REG-файлы

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

REG-файлы открываются автоматически (или, по крайней мере, должны если все правильно установлено и организовано) при двойном нажатии в редакторе реестра Windows.

Вы можете.REG-файлами, в самом редакторе реестра, экспортировать весь реестр или отдельные его ключи.

А также вы можете вручную редактировать содержимое.REG файла в Windows блокноте или любом другом текстовом файловом редакторе. Щелкните правой кнопкой мыши по.REG файлу в проводнике, в появившемся контекстном меню откройте опцию «редактировать».

В примере на рисунке указан ключ HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics, и он здесь выделен потому, что включает в себя дополнение к конфигурации по умолчанию.

В конце ключа находится раздел под названием «MinWidth», который имеет численное значение 54. Этот ключ изменяет поведение значков на панели задач Windows (не группировать), так, чтобы значки программ, при запуске нескольких экземпляров, отображались раздельно, но без их подписей.

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

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

Основные файлы, отвечающие за формирование реестра

Файлы реестра создаются в процессе установки операционной системы и хранятся в папке:

%SystemRoot%\system32\config (обычно C:\windows\system32\config ).

Для операционных систем Windows это файлы с именами:

system
software
sam
security
default
components
bcd-template

В операционных системах Windows Vista, Windows 7, Windows8, , , файлы реестра располагаются в каталоге \Windows\system32\config и имеют такие же имена, однако в этих операционных системах добавился новый раздел реестра для хранения (Boot Configuration Data ) с именем BCD00000000 . Файл с данными этого раздела имеет имя bcd и находится в скрытой папке Boot активного раздела (раздела, с которого выполняется загрузка системы). Обычно, при стандартной установке Windows, создается активный раздел небольшого размера (от 100 до 500 мегабайт в зависимости от операционной системы), который скрыт от пользователя и содержит только служебные данные для загрузки системы – загрузочные записи, менеджер загрузки bootmgr , хранилище конфигурации загрузки BCD , файлы локализации и программы тестирования памяти. Расположение куста bcd зависит от того, как сконфигурирован загрузчик системы при ее установке, и может находиться на том же разделе, где и каталог Windows.

Место расположения файлов реестра в любой версии Windows можно просмотреть с помощью редактора реестра, в разделе:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist

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

Структура реестра

Реестр Windows имеет древовидную структуру и состоит из 5 основных разделов реестра:

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

HKEY_ CLASSES_ ROOT (HKCR) - содержит ассоциации между приложениями и типами файлов (по расширениям файлов). Кроме того, в этом разделе находится информация о зарегистрированных типах файлов и объектах COM и ActiveX. Кроме HKEY_ CLASSES_ ROOT эти сведения хранятся также в разделах HKEY_LOCAL_MACHINE и HKEY_CURRENT_USER . Раздел HKEY_LOCAL_MACHINE\Software\Classes содержит параметры по умолчанию, которые относятся ко всем пользователям локального компьютера. Параметры, содержащиеся в разделе HKEY_CURRENT_USER\Software\Classes , переопределяют принятые по умолчанию и относятся только к текущему пользователю. Раздел HKEY_CLASSES_ROOT включает в себя данные из обоих источников.

HKEY_USERS (HKU) - содержит настройки среды для каждого из загруженных пользовательских профилей, а также для профиля по умолчанию. В HKEY_USERS находится вложенный раздел \Default , а также другие подразделы, определяемые идентификатором безопасности (Security ID, SID ) каждого пользователя.

 HKEY_CURRENT USER (HKCU) - cодержит настройки среды для пользователя, на данный момент зарегистрировавшегося в системе (переменные окружения, настройки рабочего стола, параметры сети, приложений и подключенных устройств).

Этот раздел дублирует информацию в HKEY_USERS\user SID , где user SID - идентификатор безопасности пользователя, зарегистрировавшегося в системе на текущий момент (узнать SID текущего пользователя можно, набрав в командной строке whoami /user ).

HKEY_CURRENT_ CONFIG (HKCC) - cодержит настройки для текущего аппаратного профиля. Текущий аппаратный профиль включает в себя наборы изменений, внесенных в стандартную конфигурацию устройств, заданную в подразделах Software и System корневого раздела HKEY LOCAL_MACHINE . В HKEY_CURRENT_CONFIG отражаются только изменения. Кроме того, информация этого раздела находится в HKEY_LOCAL_MACHINE\System\CurrentControlSet\HardwareProfiles\Current .

Данные в реестре хранятся в виде параметров, расположенных в ключах реестра. Каждый параметр характеризуется именем, типом данных и значением.

Основные типы данных, применяемые в реестре

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

REG_SZ - Текстовая строка в формате, удобном для восприятия человеком. Значениям, представляющим собой описания компонентов, обычно присваивается именно этот тип данных.

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

REG_MULTI_SZ - Многострочное поле. Значения, которые фактически представляют собой списки текстовых строк в формате, удобном для восприятия человеком, обычно имеют этот тип данных. Строки разделены символом NULL.

REG_BINARY - Двоичные данные. Большинство аппаратных компонентов используют информацию, которая хранится в виде двоичных данных. Редакторы реестра отображают эту информацию в шестнадцатеричном формате.

REG_RESOURCE_LIST - Список аппаратных ресурсов. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE .

Также иногда можно встретить такие типы данных реестра:

REG_RESOURCE_ REQUIREMENTS_LIST - Список необходимых аппаратных ресурсов. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE .

REG_FULL_RESOURCE_ DESCRIPTOR - Дескриптор (описатель) аппаратного ресурса. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE .

REG_QWORD - 64-х разрядное число.

REG_DWORD_ LITTLE_ENDIAN - 32-разрядное число в формате «остроконечников» (little-endian), эквивалент REG_DWORD .

REG_DWORD_BIG_ ENDIAN - 32-разрядное число в формате «тупоконечников» (big-endian).

REG_QWORD_LITTLE_ ENDIAN - 64-разрядное число в формате «остроконечников». Эквивалент REG_QWORD .

REG_NONE - Параметр не имеет определенного типа данных.

Взаимодействие реестра с операционной системой

При запуске компьютера распознаватель аппаратных средств (hardware recognizer ) помещает в реестр список обнаруженных им устройств. Обычно распознавание аппаратных средств осуществляется программой Ntdetect.com и ядром операционной системы Ntoskrnl.exe

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

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

При входе пользователя в систему загружаются пользовательские профили (user profiles ). Вся информация, относящаяся к конкретному имени пользователя и связанными с ним правами хранится в реестре. Пользовательский профиль определяет индивидуальные параметры настройки системы (разрешение дисплея, параметры сетевых соединений, подключенные устройства и многое другое). Информация о пользовательских профилях также хранится в реестре.

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

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

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

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

История возникновения и развития реестра

В развитии реестра следует разделить «технологический» и «идеологический» шаги.

Реестр Windows 3.1

Технологический шаг был сделан в Windows 3.1.

Реестр Windows 3.1 имел ограничение на максимальный размер файла REG.DAT - 64 Кбайт. Если вдруг реестр превышал этот размер - то файл реестра (REG.DAT) приходилось удалять и собирать заново либо из

Реестр Windows NT 3.1

Идеологический шаг был сделан в Windows NT 3.1 (июль ). Произошел отказ от файлов CONFIG.SYS, а также от INI-файлов , как от основных файлов конфигурации. На «регистрационную базу» (реестр) была переведена вся конфигурация системы. Основой конфигурации системы стал реестр. Он имел 4 корневых раздела: HKEY_ LOCAL_MACHINE, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT и HKEY_USERS.
Реестр стал «сборным»: на диске он хранился в файлах: DEFAULT, SOFTWARE, SYSTEM, а при запуске системы из этих файлов собиралась единая БД.
В комплекте поставки оставался файл REGEDIT.EXE, который по прежнему позволял просматривать и редактировать только ветку HKEY_CLASSES_ROOT, и появился файл REGEDT32.EXE, который позволял редактировать все ветки реестра.

Далее технология и идеология (назначение) реестра уже не менялись. Все последующие версии Windows (NT 3.5, 95, NT 4.0, 98, 2000, XP, Vista) использовали реестр как основную БД, содержащую все основные данные по конфигурации как самой ОС, так и прикладных программ. Далее менялось только расположение и название файлов реестра, и название и назначение ключей.

Современный реестр Windows

Реестр в том виде, как его использует Windows и как видит его пользователь в процессе использования программ работы с реестром, некоторым образом «нигде не хранится», а формируется из различных данных. Чтобы получилось то, что видит пользователь, редактируя реестр, происходит следующее.

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

Затем, в процессе каждой загрузки системы, а так же в процессе каждого входа и выхода каждого из пользователей, формируется некая виртуальная сущность, называемая «реестром» - объект REGISTRY\. Данные для формирования «реестра» частично берутся из тех самых файлов (Software, System ...), частично из информации, собранной ntdetect при загрузке (HKLM\Hardware\Description).

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

Для редактирования, просмотра и изучения реестра стандартными средствами Windows (программы regedit.exe и regedt32.exe) доступны именно ветки реестра. После редактирования реестра и/или внесения в него изменений эти изменения сразу записываются в файлы.

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

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

Файлы реестра (Хранение данных реестра)

Windows 95/98

  • User.dat
  • System.dat

Windows ME

  • Classes.dat
  • User.dat
  • System.dat

Windows 2000

Windows XP

После установки Windows на диске в каталоге %SystemRoot% \System32\Config\ (например, C:\Windows\System32\Config\) хранятся следующие файлы:

  • system
  • software
  • security
  • default

(Все файлы (имена файлов) без расширений. Копия этих файлов хранится в каталоге C:\Windows\Repair\)

Кроме того, файлы, используемые при построении «рабочей версии» реестра, могут храниться в каталогах:

  • %SystemDrive% \Documents and Settings\\ - файл «Ntuser.dat»
  • %SystemDrive% \Documents and Settings\\Local Settings\Application Data\Microsoft\Windows\ - файл «UsrClass.dat»

Кроме этого, могут появляться и другие файлы реестра: userdiff (и userdiff.LOG), TempKey.LOG, и, возможно, другие

Можно провести некое примерное соответствие файлов и веток реестра, но оно не такое простое, полное и однозначное. Однако примерно можно сказать следующее:

  • Ветка реестра «HKEY_LOCAL_MACHINE\Software\» формируется из файла «software».
  • Ветка реестра «HKEY_LOCAL_MACHINE\System\» формируется из файла «system».
  • Ветка реестра «HKEY_USERS\» формируется из файлов «default» и других.

Команды сброса:

  1. Скинуть сетевые настройки: -netsh interface ip reset c:\log.txt
  2. Если в Диспетчере устройств не отображается список устройств: regsvr32 jscript.dll regsvr32 vbscript.dll
  3. Пример команды сброса параметров безопасности: secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose

Параметры реестра:

  1. Отключает автозагрузку съёмных дисков (USB и т. д.): "NoDriveTypeAutoRun"=dword:000000ff

Windows Vista

В Windows Vista файлы реестра хранятся там же, где и в Windows XP.

Пример команды сброса параметров безопасности:

secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose

Windows CE/Mobile

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

HKEY_CURRENT_USER

Данный раздел содержит настройки текущего активного пользователя, вошедшего в систему. Здесь хранятся папки пользователя, цвета экрана и параметры панели управления. Эти сведения сопоставлены с профилем пользователя. Вместо полного имени раздела иногда используется аббревиатура HKCU. Хотя это раздел выглядит как один из основных в редакторе ресстра, он является всего лишь ссылкой на один из профилей HKEY_USERS\.

HKEY_USERS

Данный раздел содержит все активные загруженные профили пользователей компьютера. Раздел HKEY_CURRENT_USER является подразделом раздела HKEY_USERS. Вместо полного имени раздела иногда используется аббревиатура HKU.

HKEY_LOCAL_MACHINE

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

HKEY_CLASSES_ROOT

Является подразделом HKEY_LOCAL_MACHINE\Software\Classes. В основном, содержит информацию о зарегистрированных типах файлов и объектах ActiveX. Вместо полного имени раздела иногда используется аббревиатура HKCR. Начиная с Windows 2000, эти сведения хранятся как в HKEY_LOCAL_MACHINE, так и в HKEY_CURRENT_USER. Раздел HKEY_LOCAL_MACHINE\Software\Classes содержит параметры по умолчанию, которые относятся ко всем пользователям локального компьютера. Параметры, содержащиеся в разделе HKEY_CURRENT_USER\Software\Classes, переопределяют принятые по умолчанию и относятся только к текущему пользователю. Раздел HKEY_CLASSES_ROOT включает в себя данные из обоих источников. Кроме того, раздел HKEY_CLASSES_ROOT предоставляет объединённые данные программам, написанным под ранние версии Windows. Изменения настроек текущего пользователя выполняются в разделе HKEY_CURRENT_USER\Software\Classes. Модификация параметров по умолчанию должна производиться в разделе HKEY_LOCAL_MACHINE\Software\Classes. Данные из разделов, добавленных в HKEY_CLASSES_ROOT, будут сохранены системой в разделе HKEY_LOCAL_MACHINE\Software\Classes. Если изменяется параметр в одном из подразделов раздела HKEY_CLASSES_ROOT и такой подраздел уже существует в HKEY_CURRENT_USER\Software\Classes, то для хранения информации будет использован раздел HKEY_CURRENT_USER\Software\Classes, а не HKEY_LOCAL_MACHINE\Software\Classes.

HKEY_CURRENT_CONFIG

HKEY_DYN_DATA

Данный раздел имеется только в реестре ОС семейства Windows 9x/ME. Содержит динамически изменяемые данные о компьютере (загрузка процессора, размер файла подкачки и т. п.).

Критика

Способ хранения параметров и настроек операционной системы при помощи реестра Windows часто подвергается критике по следующим причинам:

  • Реестр подвержен фрагментации, из-за чего доступ к реестру постепенно замедляется
  • В связи с тем, что помимо настроек в реестре хранится различная информация системы и приложений (например многие приложения хранят в реестре список недавно открытых файлов), размер реестра значительно увеличивается по мере использования операционной системы . Эта проблема частично решается при помощи специальных утилит
  • Не все настройки системы хранятся в реестре, соответственно перенос настроек системы путём копирования реестра невозможен

Программы для работы с реестром

  • regedit.exe
  • regedt32.exe
  • Набор бесплатных программ от Paul Lee для просмотра, редактирования и мелкого ручного ремонта файлов реестра
  • Программа Registry Reanimator для исправления поврежденных файлов реестра

Терминология

В описании реестра в английской литературе, среди прочих, используется термин Hive . В некоторых работах его переводят на русский как «улей». Microsoft в своих документах переводит это как куст . Например:
Registry hive HKEY_LOCAL_MACHINE\SAM == Куст реестра HKEY_LOCAL_MACHINE\SAM (см. и )
Куст реестра - это подмножество разделов, подразделов и параметров реестра, которому сопоставлен набор вспомогательных файлов, содержащих резервные копии этих данных (

Реестр Windows (англ. Windows Registry), или системный реестр - иерархически построенная база данных параметров и настроек в большинстве операционных систем Microsoft Windows.

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

Реестр Windows был введён для упорядочения информации, хранившейся до этого во множестве INI-файлов, обеспечения единого механизма (API) записи-чтения настроек и избавления от проблем коротких имён, отсутствия разграничения прав доступа и медленного доступа к ini-файлам, хранящимся на файловой системе FAT16, имевшей серьёзные проблемы быстродействия при поиске файлов в директориях с большим их количеством. Со временем (окончательно - с появлением файловой системы NTFS) проблемы, решавшиеся реестром, исчезли, но реестр остался из-за обратной совместимости, и присутствует во всех версиях Windows, включая последнюю. Поскольку сейчас не существует реальных предпосылок для использования подобного механизма, Microsoft Windows - единственная операционная система из используемых сегодня, в которой используется механизм реестра операционной системы. В общем Реестр это рудимент.

Реестр Windows в нынешнем виде.

Реестр в том виде, как его использует Windows и как видит его пользователь в процессе использования программ работы с реестром, формируется из различных данных. Чтобы получилось то, что видит пользователь, редактируя реестр, происходит следующее.

Вначале, в процессе установки (инсталляции) и настройки Windows, на диске формируются файлы, в которых хранится часть данных относительно конфигурации системы.


Затем, в процессе каждой загрузки системы, а также в процессе каждого входа и выхода каждого из пользователей, формируется некая виртуальная сущность, называемая «реестром» - объект REGISTRY\. Данные для формирования «реестра» частично берутся из тех самых файлов (Software, System …), частично из информации, собранной ntdetect при загрузке (HKLM\Hardware\Description).

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

Для редактирования, просмотра и изучения реестра стандартными средствами Windows (программы regedit.exe и regedt32.exe) доступны именно ветки реестра. После редактирования реестра и/или внесения в него изменений эти изменения сразу записываются в файлы.

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

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

Где лежат файлы реестра Windows?

Файлы реестра лежат в папке windows\System32\config\ еще есть пользовательский раздел реестра - в файле %userprofile%\ntuser.dat. Резервные копии файлов реестра находятся в папке windows\System32\config\RegBack.

Какие основные разделы (кусты) реестра?

Раздел HKEY_CLASSES_ROOT

Это основной ключ реестра Windows, он содержит ассоциации файлов, которые связывают типы файлов с программами, которые могут открывать и редактировать их, и регистрацию классов для объектов Component Object Model (COM – компонентная модель объектов). Последнее предоставляет возможность изменить неимоверное число правил поведения системы - не стоит этого делать без веской причины.

Раздел HKEY_CURRENT_USER

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

Раздел HKEY_LOCAL_MACHINE

Здесь хранятся параметры конфигурации, которые относятся к данному компьютеру (параметры устанавливаются одновременно для всех пользователей). Например, здесь содержатся сведения о конфигурации компьютера, установленных драйверах и программах, наименовании портов, параметры файловой системы и т.п.

Раздел HKEY_USERS

Эта ветка содержит информацию о профилях всех пользователей данного компьютера (имя пользователя, настройки рабочего стола и т.д.). Также этот раздел хранит настройки по умолчанию для рабочего стола, меню «Пуск» и т.д. Они нужны в тех случаях, когда новый пользователь входит в систему в первый раз. В этот момент настройки по умолчанию копируются в его профиль, а все дальнейшие изменения, сделанные пользователем, сохранятся в данной ветке.

Раздел HKEY_CURRENT_CONFIG

Ключ отвечает за устройства Plug&Play и содержит информацию о текущей конфигурации компьютера с переменным составом устройств, вроде флеш-карт, принтеров, факсов, внешних накопителей и т.п. Также данный раздел содержит сведения о текущем профиле оборудования, который используется компьютером при запуске системы.

HKEY_DYN_DATA

Данный раздел имеется только в реестре ОС семейства Windows 9x/ME. Содержит динамически изменяемые данные о компьютере (загрузка процессора, размер файла подкачки и т. п.)

Как редактировать реестр?

Все просто в поиске Windows набираем regedit и запускаем редактор реестра от имени администратора. Перед выполнением каких либо операций в реестре необходимо сделать резервную копию! Если что то пойдет не так, можно будет вернутся на рабочую версию реестра.


Оптимизация работы реестра.

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


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

Для оптимизации работы реестра Windows можно использовать программы , WinOptimizer, Reg Organizer, Auslogics Boostspeed.


Если остались вопросы смотрите видео выше.