Именно благодаря возможности использования подобных обработчиков ContextMenuHandler, PropertySheetHandler и др. программы могут изменять меню правой кнопки мыши как им необходимо. К примеру, добавлять в окно свойств окна для быстрого просмотра изображений. Причем такое окно появляется не для всех типов файлов, а только для тех, в подразделе ShellEx которых присутствует обработчик PropertySheetHandler, а в его подразделе указан нужный идентификатор, — то есть только для файлов картинок.
Параметры и разделы, изменяющие контекстное меню, вносятся программами в реестр при их инсталляции или из диалоговых окон самих программ.
Вряд ли, конечно, тем, кто профессионально не занимается программированием, эти данные пригодятся непосредственно в работе. Но, во всяком случае, теперь вы не будете в реестре гостем, незнакомым с местностью, а сможете понимать назначение его записей. Ну, а если когда-нибудь вы возьметесь за изучение технологии составления программ, то эта информация вам в какой-то степени поможет ее освоить.
В операционных системах Windows 2000 и Windows XP данный раздел реестра устроен практически так же, как описано выше.
Краткий вывод. Каждый тип файлов, зарегистрированный в системе, представлен в разделе HKEY_CLASSES_ROOT системного реестра в двух местах:
1. В начале раздела, в подразделе с именем расширения этого типа файлов с точкой вначале. Здесь приводится «внутреннее» имя этог типа файлов, а также информация о включении данного типа в меню 'Создать…'.
2. В подразделе с именем, соответствующим «внутреннему» имени. Здесь указывается «официальное» имя этого типа файлов, а также указывается его иконка и определяются пункты контекстного меню правой кнопки мыши для него.
В реестре встречаются «обломки» предыдущих регистраций в виде подразделов с уже утратившими актуальность «внутренними» именами типов файлов.
Пользовательский модуль
Следующий раздел системного реестра, если идти по порядку — HKEY_CURRENT_USER. Это — информация, которая меняется от пользователя к пользователю. При входе в операционную систему под другим именем эта часть реестра будет другая. Он состоит из большого количества подразделов.
В разделе AppEvents записана информация о звуковых схемах и назначенных звуках в системе. Именно здесь хранятся те данные, что вы вводите в диалоге Звук Панели управления.
Раздел Clock, как нетрудно понять, посвящен часам — именно тем, что торчат в углу панели задач. Здесь — все их параметры.
Раздел Control Panel содержит в себе информацию о настройках внешнего вида операционной системы. Это, пожалуй, один из самых интересных разделов реестра, так как именно здесь настраиваются разного рода «красивости» интерфейса Windows. Подраздел Appearance содержит в себе информацию о всех возможных цветовых схемах Windows. Эти схемы закладываются в реестр при его создании и именно отсюда берутся данные для окна Свойства экрана — Оформление (рис. 14.6).
Рис. 14.6.
В подразделе Colors расположена информация об оформлении стандартных элементов интерфейса Windows — границ окон, поверхности кнопок и их краев, полос заголовка окна и прокрутки и т. д. Все цвета представлены в виде трех чисел — интенсивности их красного, зеленого и синего компонентов. Некоторые из этих параметров могут быть заданы при создании цветовой схемы, а некоторые — изменены только в реестре. Если хотите, можете немного поиграть с интерфейсом вашей системы.
В подразделе Cursors хранится информация о выбранном наборе изображений курсора и о всех стандартных наборах таких изображений.
Подраздел Desktop и его подразделы посвящены оформлению рабочего стола. Информация о шрифтах окон и меню, отображении полос прокрутки находится здесь. Однако большую часть параметров этого подраздела крайне желательно изменять не из редактора реестра, а из стандартных диалоговых окон, так как, в частности, запись используемых шрифтов здесь ведется в своем особом формате. Некоторые параметры вполне могут корректироваться и впрямую в реестре — скажем, если вы хотите удалить пароль скринсейвера, поставьте значение параметра ScreenSaveUsePassword в 0 (сам пароль хранится в параметре ScreenSave_Data).
Другие подразделы раздела Control Panel имеют чисто служебное значение. Там могут храниться данные о назначении кнопок мыши и т. д.
Раздел Identities, если он у вас есть, используется почтовой программой Outlook Express для хранения информации об имеющихся идентификационных записях (попросту — своих пользователях). Здесь расположены настройки Outlook Express для каждого из пользователей, каждому из которых отведен свой подраздел. Например, в одном из многочисленных подразделов раздела Identities можно найти параметр WindowTitle (а можно и не найти). Именно в нем записана та строка, которая отображается в заголовке Outlook Express, на самой верхней синей полосе окна. Также в этом разделе хранится информация о всех учетных записях почты и новостей всех пользователей Outlook Express, за исключением активного — того, на которого Outlook Express была настроена при последнем выходе из этой программы.
Раздел Keyboard layout посвящен раскладкам клавиатуры, а InstallLocationsMRU — путям к некоторым драйверам. Оба раздела — чисто служебные и особого интереса не представляют. В разделе Network находятся параметры локальной сети, если компьютер к ней подключен. Изменять параметры всех этих разделов из редактора реестра не стоит.
В разделе RemoteAccess записаны параметры соединений удаленного доступа: имена соединений, телефоны и некоторые настройки. Однако паролей, столь часто интересующих хакеров, тут нет — они хранятся в файлах. pwl в папке Windows в зашифрованном виде.
В HKEY_CURRENT_USER могут быть и другие разделы, созданные разными установленными программами.
И, наконец, последний и наиболее обширный раздел — это раздел Software. Параметры установленных программ — в том числе и самой Windows! Однако свои параметры в этот раздел пишут не все программы, а лишь те, которые поддерживают многопользовательский режим, то есть допускают различные свои настройки для разных пользователей Windows. (Остальные размещают свои данные в аналогичном разделе ключа HKEY_LOCAL_MACHINE.) В самом разделе Software полагается помещать не подразделы с названиями программ, а подразделы с названиями их фирм-производителей, а уже лишь в них — названия программ. (Это, впрочем, не обязательно для соблюдения программистами.)
В подразделе Microsoft расположены настройки установленных на компьютере программ, выпущенных этой фирмой. В его подразделе Internet Account Manager находятся настройки учетных записей текущего пользователя программы Outlook Express. Рядом с ним можно видеть подраздел с именем этой программы, тоже полный всяческих настроек.
При смене текущего пользователя Outlook Express содержимое этих разделов заменяется на соответствующее из раздела HKEY_CURRENT_USER Identities. Рядом — раздел Internet Explorer: чьи настройки там находятся, думается, ясно.
Для того, чтобы через целый лес из имен программ и фирм добраться до настроек вашей операционной системы, найдите в разделе Software подраздел Microsoft, а в нем — подраздел Windows. Там откройте подраздел CurrentVersion (обычно он один). И вот — перед вами еще один блок настроек операционной системы! Количество подразделов здесь может варьировать — в зависимости от «навороченности» вашей Windows: и Internet Explorer, и MS Office могут добавить сюда пару компонентов.
В подразделе Applets