Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Всё о работе в Интернет" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Секреты Windows: статьи о реестре, rundll32.exe, программах Недокументированные возможности Windows XP. Реестр. Часть 2
Уважаемые подписчики, на нашем сайте (http://www.onestyle.com.ua) организован опрос, тема которого: 'Содержимое какой из книг вы бы хотели прочитать в будущих статьях на нашем сайте?'. Голосование ведется до 7 апреля. Спешите проголовать за книгу, содержимое которой вы хотели бы видеть в данной рассылке! Другие наши рассылки:
Новости нашего сайта: Продолжение, начало в выпусках: 21 Книга "Недокументированные возможности Windows XP. Библиотека пользователя", Глава 2. Реестр Windows XP. Часть 2. Подраздел идентификатора А теперь давайте поговорим о содержимом второго подраздела, используемого для описания расширения. Этот подраздел может содержать следующие параметры... Кроме подразделов идентификаторов для расширений файлов, в системе также существуют стандартные идентификаторы Windows, описывающие такие объекты, как папка, диск, неизвестные расширения.
Параметры подраздела идентификатора
EditFlags Значение данного параметра dword-типа определяет различные ограничения на модификацию параметров данного расширения при помощи вкладки ТИПЫ ФАЙЛОВ диалога СВОЙСТВА ПАПКИ. Например, если значение этого параметра равно 0х00000001, то соответствующего расширения в списке зарегистрированных файлов данной вкладки вы не найдете. Если же значение данного параметра равно 0х00000008, то кнопка ДОПОЛНИТЕЛЬНО вкладки ТИПЫ ФАЙЛОВ будет заблокирована для данного расширения. А если значение данного параметра равно 0х00000200, то будет запрещена возможность смены значка для данного расширения. А можно вообще сложить все предыдущие значения — этот параметр является набором управляющих битов (битовой маской), поэтому это приведет к одновременному скрытию типа файлов из диалога СВОЙСТВА ПАПКИ, блокировке кнопки ДОПОЛНИТЕЛЬНО для данного расширения и запрету изменения значка. Для примера, рисунок 2.03 отображает диалог изменения txt-файла с установленным значением параметра в 0х000003с0. то есть, используются следующие битовые маски:
![]() Рисунок 1 Рис. 2.03 Запрет на удаление, изменение, смену описания и смену значка AlwaysShowExt и NeverShowExt Эти два параметра строкового типа являются взаимоисключающими. То есть, если в подразделе присутствует один из этих параметров, то другого там быть не должно. Если в подразделе будет присутствовать первый параметр (значения им присваивать не нужно), тогда соответствующее расширение файла будет отображаться всегда. Не зависимо от того, как настроена система (здесь имеется в виду возможность скрытия зарегистрированных расширений при помощи соответствующего флажка вкладки ВИД диалога СВОЙСТВА ПАПКИ). А если присутствует второй параметр, то расширение будет всегда скрыто. InfoTip Значение этого параметра строкового типа определяет подсказку, которая будет отображаться при удержании над файлом данного расширения указателя мыши. Этот параметр может содержать в себе или произвольный текст или специальные зарезервированные слова (если присутствуют обычные слова, то зарезервированные считаются тоже обычными словами и не выполняют заложенных в них действий). Зарезервированные слова пишутся после строки prop:. К таким словам относятся: Comment (в подсказке будет выводиться комментарий, вводимый в диалоге СВОЙСТВА данного файла), Size (в подсказке отображается размер файла), Access (отображаются права на доступ к файлу), Owner (отображается логин создателя файла), Year и другие. Несколько зарезервированных слов пишутся через точку с запятой. На рисунке 2.01 можно было видеть, что для txt-файлов в подсказке отображаются сведения о размере, а также описание файла, задаваемое в параметре по умолчанию подраздела идентификатора. Параметр по умолчанию подраздела идентификатора содержит в себе строку описания, отображаемую в поле ТИП ФАЙЛА диалога СВОЙСТВА. Также значение данного параметра отображается как название команды в меню СОЗДАТЬ контекстного меню рабочего стола или проводника. IsShortCut Это необязательный параметр строкового типа, не содержащий в себе никакого значения. Если он присутствует в подразделе, то файлы с соответствующим расширением будут считаться ярлыками. Это приведет к тому, что внизу значка файла будет появляться стрелочка, символизирующая файл ярлыка. BrowseInPlace Очень интересный строковой параметр, значение которого можно не указывать. Он используется только для идентификаторов, файлы которых открывают окно проводника — например, для идентификатора DIRECTORY. Если данный идентификатор будет содержать в себе параметр строкового типа BROWSEINPLACE, то все папки в системе будут открываться с помощью браузера Internet Explorer. Например, если попытаться открыть папку C:\Windows, то браузер будет искать сайт с адресом C:\Windows. Конечно, у него это не получится, поэтому с помощью данного параметра строкового типа можно запретить пользователям доступ к папкам системы. DocObject Этот параметр строкового типа также очень интересен, ведь если его создать, допустим, в подразделе DIRECTORY, то мы добьемся аналогичных действий, что и с помощью предыдущего параметра. Thumbnail Еще один параметр строкового типа. Его значение указывает на файл изображения, который будет использоваться для отображения в виде эскиза страницы для файлов с соответствующим расширением (правда, данный параметр применяется не для всех идентификаторов). Например, если создать данный параметр в подразделе идентификатора DRIVE, тогда все диски при использовании вида ЭСКИЗЫ СТРАНИЦ будут представлены с помощью указанного вами изображения. А если создать данный параметр в подразделе идентификатора FOLDER, тогда ваш значок будет использоваться для отображения значка КОРЗИНЫ. DefaultDropEffect Данный параметр DWORD-типа определяет, какую именно операцию будет выполнять система при перемещении файлов с данным расширением в другое окно. По умолчанию при этом она перемещает файл любого расширения в соответствующую папку, но если значение этого параметра равно 1, то файл с соответствующим расширением будет копироваться. Подразделы ветви идентификатора
Подраздел идентификатора, кроме параметров, может содержать в себе и другие подразделы — они определяют значок, используемый для файлов с данным расширением, текущую версию идентификатора, а также сами команды контекстного меню файла. Давайте рассмотрим содержимое этих подразделов. CurVer Параметр по умолчанию данного подраздела определяет названия идентификатора, имеющего более новые сведения о расширении. Если вы встретите данный подраздел в каком-нибудь идентификаторе расширения, тогда можете сразу смотреть на его параметр по умолчанию и искать записанный в нем идентификатор — ведь настройки текущего идентификатора в системе уже не применяются. DefaultIcon Параметр по умолчанию этого подраздела определяет путь к bmp-файлу изображения, применяемому для отображения значков файлов с соответствующим расширением. Shell Это, наверное, самый интересный подраздел идентификатора, ведь именно его содержимое и определяет команды контекстного меню для расширения, а также их свойства. Параметр по умолчанию данного подраздела определяет название глагола (глаголы являются подразделами раздела SHELL), команда которого будет использоваться при выполнении попытки открытия файлов соответствующего расширения двойным щелчком мыши. Также параметр по умолчанию может содержать в себе перечисление всех глаголов подраздела — в этом случае он описывает последовательность, в которой они будут расположены в контекстном меню файла. Сами же глаголы, как мы уже сказали, являются подразделами ветви SHELL и могут содержать в себе различные параметры (один глагол определяет одну команду контекстного меню). Например, среди этих параметров можно встретить следующие.
![]() Рисунок 2 Рис. 2.04. Создание синонима программы Кроме параметров подразделы глаголов содержат и несколько подразделов, которые, как раз, и определяют те команды, которые будут выполняться при выборе из контекстного меню файла соответствующего действия.
Shellex Но не только подраздел SHELL может содержать в себе настройки контекстного меню файлов с соответствующим расширением — также команды контекстного меню могут содержаться и в этом разделе. Нет, это не избыточность — подраздел SHELLEX имеет совершенно другое назначение, чем подраздел SHELL. Если подраздел SHELL создан специально для того, чтобы описывать команды меню, вызывающие различные программы с помощью стандартного диалога ВЫПОЛНИТЬ, то подраздел SHELLEX содержит в себе сведения о дополнительных расширениях, которые могут использоваться при отображении значка, контекстного меню или диалога свойств для файлов данного расширения. Эти расширения реализованы в системе с помощью ActiveX-объектов, но о них мы поговорим чуть позже — когда будем рассматривать ветвь реестра, содержащую сведения обо всех установленных на компьютере ActiveX-объектах. В зависимости от назначения ActiveX-объекта, его описание должно находиться в одном из дочерних подразделов нашего раздела SHELLEX. Например, в подразделе PROPERTYSHEETHANDLERS хранятся дополнительные вкладки для диалога СВОЙСТВА файлов данного расширения. В подразделе CONTEXTMENUHANDLERS определяются дополнительные команды контекстного меню, использующие для своей работы ActiveX-объекты. В подразделе DROPHANDLER определяется обработчик для операций drag`n`drop, выполняемых с файлами соответствующего расширения. А в подразделе ICONHANDLER содержаться сведения об обработчиках значков, которые будут отображать соответствующий значок в диалоге свойств или вместо стандартного значка файла. Независимо от того, какой подраздел используется для описания расширения ActiveX файла, содержимое этого подраздела должно быть представлено в одной из следующих форм.
Продолжение следует Оригинал статьи: http://www.onestyle.com.ua/txt.php?u=109
|
В избранное | ||