Антон Орлов - Тайны и секреты компьютера
Общий модуль
HKEY_USERS — второй «реальный» раздел реестра. Он состоит из одного или двух больших подразделов. В любом случае один из них называется. Default и является разделом HKEY_CURRENT_USER для конфигурации пользователя Windows по умолчанию (если в Windows зарегистрировано несколько пользователей, то ее можно загрузить, нажав Esc при запросе пароля на входе в Windows). Если в Windows зарегистрирован один пользователь, то раздел. Default будет единственным и совпадать с HKEY_CURRENT_USER, а если нет, то в HKEY_USERS будет еще один раздел, чье имя будет совпадать с именем текущего пользователя, и именно этот раздел будет отражен в реестре еще раз под именем HKEY_CURRENT_USER.
В системном реестре Windows 2000/XP раздел HKEY_USERS тоже присутствует и выполняет ту же функцию — хранит в себе варианты раздела HKEY_CURRENT_USER для каждого из пользователей, зарегистрированных в операционной системе.
Ключи конфигурации
HKEY_CURRENT_CONFIG — это описание текущей конфигурации оборудования компьютера. Этот раздел является отражением одной из ветвей раздела HKEY_LOCAL_MACHINEConfig, в котором описаны все созданные в системе конфигурации оборудования. Сами эти конфигурации создаются с помощью диалогового окна Панель управления — Система — Конфигурации. Когда конфигурация меняется, меняется и содержимое раздела HKEY_ CURRENT_CONFIG — он начинает «отражать» уже другую ветвь раздела HKEY_LOCAL_MACHINE Config.
Назначение отдельных разделов и параметров этого ключа практического интереса не представляет, так как редактировать эти данные лучше «законным» способом — с помощью диалоговых окон. Единственным следствием из всей этой информации может быть совет восстановить реестр из резервной копии, если в результате ваших экспериментов с созданием конфигураций компьютер стал неработоспособным.
В системном реестре Windows 2000/XP этот раздел устроен совершенно по-другому, хоть и выполняет похожую функцию.
Железный ключ
HKEY_DYN_DATA — пожалуй, самый недокументированный раздел реестра. Отчасти это обьясняется тем, что данные в этом разделе создаются и корректируются автоматически. Любое вмешательство пользователя может лишь нарушить работу компьютера, — здесь нет ничего такого, что требовало бы необходимости редактирования через Редактор реестра. Интерес этот раздел представлял, скорее всего, лишь для разработчиков самой Windows на стадии ее отладки, а также, может быть, для разработчиков драйверов различных устройств компьютера. Но, так как уж он присутствует в системном реестре, то и программа regedit.exe его отображает.
В отличие от всех остальных разделов, содержимое которых хранится в файлах системного реестра на жестком диске и загружается в оперативную память лишь в случае необходимости его считывания или изменения, все данные HKEY_DYN_DATA при загрузке операционной системы размещаются в оперативной памяти и находятся там вплоть до завершения работы операционной системы.
В разделе HKEY_ DYN_DATA находятся два подраздела. Первый из них, HKEY_DYN_ DATAConfig Manager Enum посвящен состоянию «железа» компьютера. Если в разделе HKEY_LOCAL_MACHINESystemCurrentControlSet ServicesClass расположена информация о том, какие устройства установлены в компьютере, то в этом разделе — данные об их функционировании, о том, как они работают — исправно или нет. Информация в окне Панель управления — Система — Устройства формируется из содержимого обоих этих разделов.
Второй же раздел, PerfStats — это раздел статистики. Он связан (но не является «отражением», как, скажем, HKEY_CLASSES_ROOT) с разделом HKEY_LOCAL_MACHINESystemCurrentControlSetcontrolPerf Stats (рис. 14.16) и содержит статистическую информацию по параметрам этого раздела. Можно сказать, что в HKEY_LOCAL_ MACHINESystemCurrentControlSetControl PerfStats перечислены параметры статистики системы, а в HKEY_DYN_DATA PerfStats — их значения. Именно отсюда берет свои данные программа Системный монитор.
Рис. 14.16. Статистический центр системы. Хотите посмотреть эти данные? Не лазьте в реестр — запустите Системный монитор, и увидите то же самое
Назначение раздела HKEY_DYN_DATA — постоянно находиться в оперативной памяти и поставлять системе информацию о состоянии устройств компьютера по первому ее требованию. Чтобы в этом случае не пришлось ничего загружать в память, а все там уже было. Можно было бы, конечно, перенести всю эту информацию в раздел HKEY_ LOCAL_MACHINE, в соответствующие ключи, но тогда быстродействие системы бы серьезно замедлилось. А так — раздел не очень большой и не содержит в себе ничего, кроме данных для системы, — ни названий, ни пояснений. Чисто служебная информация.
В системном реестре Windows 2000/XP данный раздел отсутствует.
* * *
Возможно, конечно, что Ваш реестр в деталях несколько отличается от структуры, которая была здесь описана. Это вполне естественно, так как содержимое реестра во многом зависит от набора программ, установленных на компьютере, да и от самой операционной системы. Наличие или отсутствие установленных Microsoft Internet Explorer и Microsoft Office сильно влияют на состав реестровых ключей и параметров. Но общий план — всегда одинаков.
Куски реестра в файлах
При экспортировании фрагмента реестра или его всего на жестком диске создается обычный текстовый файл с расширением. reg. Файл реестра имеет жестко регламентированную структуру. На рис. 14.17 показан пример раздела реестра и он же, экспортированный в текстовый файл — обратите внимание на структуру этого файла.
Рис. 14.17. Фрагмент реестра, экспортированный в текстовый файл.
В начале любого файла с частью реестра должна находиться строка Regedit4. Строго говоря, без этой строки файл не может считаться экспортированным фрагментом реестра и превращается в простой текстовый. Дело в том, что файл реестра может быть импортирован назад в реестр не только с помощью Редактора реестра, но и путем простого двойного клика мышью на нем. По умолчанию для файлов с расширением. reg установлена команда внесения их содержимого в реестр, если файл оформлен правильно.
(Некоторые файлы с расширением. reg, содержащиеся, к примеру, в дистрибутивах каких-либо программ, могут содержать не очень корректные данные и тем самым испортить ваш реестр при внесении своего содержимого в него. Поэтому настоятельно рекомендуется в меню Вид — Параметры — Типы файлов (любой папки) найти пункт "Файл реестра" и назначить ему в качестве действия по умолчанию не обьединение с реестром, а открытие, скажем, Блокнотом. При этом опасность порчи реестра при случайном двойном клике на таком файле будет предотвращена.)
Ниже команды Regedit4 находятся ключи, вносимые в реестр. Для каждого вносимого в реестр имени раздела должна быть выделена отдельная строка. Полное имя раздела (сокращения не допускаются) помещается в квадратные скобки. Имена параметров этого раздела приводятся по одному на строке, начиная за следующей сразу за именем раздела, в кавычках, рядом на той же строке — их значения. Значения строковых параметров должны приводиться в кавычках, значения параметров типа Dword — в виде шестнадцатиричной строки dword:00000000 (без кавычек), значения двоичных параметров — в шестнадцатиричной системе в виде строки hex:14,00,00,00 (без кавычек).
Если в значении строкового параметра встречается символ "", то он заменяется (в экспортированном файле реестра) на пару таких символов. Сам символ "" используется для переноса слишком длинных строк. Имя каждого раздела или подраздела, вносимого в реестр, независимо от его иерархического расположения, должно писаться полностью и на отдельной строке. Между описаниями каждого из разделов и в конце файла должно находиться по одной пустой строке. Символ "@" соответствует параметру "По умолчанию".
С помощью такого файла можно также и удалять записи из системного реестра. Для этого нужно перед именем раздела поставить знак «-»: "[-HKEY_LOCAL_MACHINE……..]".
Если хотите более подробно поисследовать формат файлов. reg — экспортируйте большой раздел в такой файл и посмотрите, что у вас получилось.
Немного полезных советов
1. Если вы используете браузер Microsoft Internet Explorer, то наверняка знакомы с эмблемой Microsoft в правом верхнем углу окна браузера. Во время загрузки страницы эта эмблема вращается. Если хотите, можете заменить эмблему Windows на свой собственный символ. Создайте два bmp-файла — 38*1520 и 24*960 пикселов. В каждом из них нарисуйте последовательность кадров размером 38*38 и 24*24 пикселов, как, скажем, на рисунке:
Также сделайте отдельные bmp-файлы с картинками размером в 38*38 и 24*24 пикселов. А затем пропишите пути к первым двум файлам в параметрах BrandBitmap и SmBrandBitmap раздела HKEY_CURRENT _USERSoftware MicrosoftInternet ExplorerToolbar, а ко вторым — в параметрах BigBitmap и SmallBitmap раздела HKEY _LOCAL_MACHINESOFTWARE MicrosoftInternet ExplorerMain. После перезагрузки браузера изображения из файлов с последовательностью кадров будут выводится в момент путешествия по Интернет, а из файлов с отдельными кадрами — при полностью загруженной web-странице.