Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Всё о работе в Интернет" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Секреты Windows: статьи о реестре, rundll32.exe, программах
Глава 1. Настройка интерфейса. 1.7. Настройка зарегистрированных файлов - окончание Полезные ссылки"Журнал Эффективная работа на компьютере"- компьютер для начинающих. С уважением Артём Ющенко. Адрес сайта http://artomu.com E-mail: admin@artomu.com Новости нашего сайта:
Подраздел идентификатораОсновные сведения о работе с файлами соответствующего расширения хранятся в подразделе идентификатора. Среди параметров данного подраздела следует обратить внимание только на параметр (по умолчанию) — он определяет описание файлов данного расширения. Остальные сведения о файле хранятся в дочерних подразделах подраздела идентификатора. Но перед тем как начать описание дочерних подразделов подраздела идентификатора, посмотрите на таблицу ниже. Она содержит в себе названия стандартных идентификаторов операционной системы. Эти идентификаторы описывают объекты файловой системы компьютера, не имеющие расширений. Таблица 1.47 Стандартные идентификаторы операционной системы Windows Vista
Обратите внимание на идентификатор Directory. В нем содержится не только описание контекстного меню, применяемого для папок с файлами, но и, также, описание контекстного меню рабочего стола — оно хранится в ветви HKCR\Directory\Background. Работать с данной ветвью реестра нужно так же, как и с ветвями обычных идентификаторов файлов. Определение значка файлаЧтобы определить значок для файлов соответствующего расширения, достаточно указать путь к значку в параметре (по умолчанию) ветви реестра вида HKCR\«идентификатор»\DefaultIcon. Контекстное меню файлаКоманды контекстного меню файлов соответствующего расширения хранятся в ветвях реестра вида HKCR\«идентификатор»\shell и HKCR\«идентификатор»\shellex. Эта ветвь реестра будет описана в следующем разделе данной главы книги. Контекстное меню: раздел shellБольшинство команд контекстного меню файлов описываются при помощи подразделов ветви реестра вида HKCR\«идентификатор»\shell. Эти подразделы называются «глаголами», и их название либо не имеет никакого значения, либо определяет название пункта контекстного меню, создаваемого при помощи данной ветви реестра. Чтобы операционная система использовала название подраздела для названия создаваемого им пункта контекстного меню, необходимо, чтобы параметр (по умолчанию) подраздела не имел никакого значения. Кроме того, необходимо, чтобы в подразделе отсутствовал параметр расширенного строкового типа MUIVerb. В противном случае значения описанных выше параметров будут переопределять название подраздела ветви HKCR\«идентификатор»\shell. Кроме параметра MUIVerb в ветви реестра вида HKCR\«идентификатор»\shell\«глагол» могут присутствовать и другие параметры. Как правило, они имеют строковый тип. Большинство из них перечислено в таблице 1.48. Таблица 1.48. Ветвь HKCR\«идентификатор»\shell\«глагол»
Кроме параметров в ветви реестра вида HKCR\«идентификатор»\shell\«глагол» должен присутствовать дочерний подраздел command. Его присутствие обязательно, ведь именно его параметр (по умолчанию) содержит в себе команду, которая будет выполняться при выборе пункта контекстного меню, определяемого данным «глаголом». Для наглядности в листинге 1.05 представлена основная структура подраздела «глагола», достаточная для того, чтобы создаваемая вами команда контекстного меню работала. На этом листинге приведен пример .reg-файла, при помощи которого создается команда контекстного меню файлов с расширением .testfile — расширением, используемым нами и в предыдущем примере. Листинг 1.05. Создание команды контекстного меню Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.testfile\shell\test] ="Создаваемый пункт контекстного меню" [HKEY_CLASSES_ROOT\IDtesfile\shell\test\command] ="Команда, которая будет выполняться" Примеры добавления команд контекстного менюТакже в качестве примера давайте посмотрим на несколько возможностей добавления дополнительных пунктов контекстного меню различных файлов. Команда открытия в блокноте для незарегистрированных файлов Чтобы создать команду для открытия файлов с неизвестным расширением в блокноте, достаточно присвоить параметру (по умолчанию) ветви реестра HKCR\Unknown\shell\Открыть в Notepad\command значение notepad.exe %1. REG-файл, добавляющий эту команду, представлен ниже (расположение на прилагающемся к книге компакт-диске — Файлы реестра\Интерфейс\AddContextNotepad.reg. Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Unknown\shell\Открыть в Notepad\command] ="notepad.exe %1" Команда Открыть с помощью… для исполняемых файлов Также можно создать команду, вызывающую диалог ВЫБОР ПРОГРАММЫ для исполняемых файлов (по умолчанию этот диалог никак нельзя вызвать для исполняемых файлов). Для этого достаточно в параметре (по умолчанию) ветви реестра HKCR\exefile\shell\Открыть с помощью\command создать значение rundll32.exe shell32.dll,OpenAs_RunDLL %1 %2. REG-файл, добавляющий эту команду, представлен ниже (расположение на прилагающемся к книге компакт-диске — Файлы реестра\Интерфейс\AddContextOpenWithExe.reg. Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\exefile\shell\Открыть с помощью\command] ="rundll32.exe shell32.dll,OpenAs_RunDLL %1 %2" Контекстное меню: раздел shellexКроме ветви реестра вида HKCR\«идентификатор»\shell, для добавления команд контекстного меню может использоваться ветвь вида HKCR\«идентификатор»\shellex. Однако возможности этой ветви реестра не ограничены только добавлением команд контекстного меню — с ее помощью регистрируются дополнительные возможности работы с файлами соответствующего типа, реализованные при помощи ActiveX-объектов. В ветви реестра вида HKCR\«идентификатор»\shellex может присутствовать ряд дочерних подразделов с определенными названиями. Чтобы зарегистрировать дополнительную возможность, реализуемую ActiveX-объектом, достаточно создать подраздел в одном из дочерних подразделов ветви HKCR\«идентификатор»\shellex, после чего присвоить созданному подразделу название, соответствующее CLSID-номеру регистрируемого ActiveX-объекта. В зависимости от подраздела, в котором будет создан подраздел ActiveX-объекта, зависит действие, которое ActiveX-объект выполняет. Итак, в таблице 1.49 представлены основные подразделы, которые могут находиться в ветви реестра HKCR\«идентификатор»\shellex. Таблица 1.49. Ветвь HKCR\«идентификатор»\shellex
Подраздел PropertySheetHandlersПри помощи подраздела PropertySheetHandlers к диалогу СВОЙСТВА для файлов соответствующего типа добавляются дополнительные вкладки. В качестве примера давайте рассмотрим, как именно добавляются стандартные вкладки к диалогам различных идентификаторов. Диалог Свойства разделов дисковДиалог СВОЙСТВА для значков дисков, отображаемых в папке КОМПЬЮТЕР, формируется на основе ветви реестра HKCR\Drive\shellex\PropertySheetHandlers. В данной ветви реестра содержатся дочерние подразделы, описанные в таблице 1.50. Таблица 1.50. Ветвь HKCR\Drive\shellex\PropertySheetHandlers {1f2e5c40-9550-11ce-99d2-00aa006e086c} Безопасность {596AB062-B4D2-4215-9F74-E9109B0A8153} Предыдущие версии {7988B573-EC89-11cf-9C00-00AA00A14F56} Квота {ef43ecfe-2ab9-4632-bf21-58909dd177f0} Настройка *{f81e9010-6ea4-11ce-a7ff-00aa003ca9f6} Доступ *Данное значение находится в параметре (по умолчанию) подраздела Sharing. Подраздел ContextMenuHandlersИменно с помощью данного подраздела могут добавляться дополнительные команды к контекстному меню файлов. Ниже мы рассмотрим как некоторые из стандартных команд контекстного меню идентификаторов Windows, так и примеры добавления своих команд. Контекстное меню разделов дискаДополнительные команды добавляются к контекстному меню значков дисков при помощи ветви реестра HKCR\Drive\shellex\ContextMenuHandlers. В таблице 1.51 представлены CLSID-номера основных ActiveX-объектов, используемых для этого, а также названия команд, которые они добавляют. Таблица 1.51. Ветвь HKCR\Drive\shellex\ContextMenuHandlers {596AB062-B4D2-4215-9F74-E9109B0A8153} Восстановить прежнюю версию {fbeb8a05-beee-4442-804e-409d6c4515e9} Записать на диск *{f81e9010-6ea4-11ce-a7ff-00aa003ca9f6} Общий доступ *Данное значение находится в параметре (по умолчанию) подраздела Sharing. Контекстного меню рабочего столаДобавление дополнительных команд к контекстному меню рабочего стола выполняется при помощи ветви реестра HKCR\Directory\Background\ShellEx\ContextMenuHandlers. Например, вы можете добавить к контекстному меню рабочего стола одну из команд, описанных в таблице 1.52 (только одну из них, если вы добавите несколько, последняя добавленная вами команда заменит предыдущую). Таблица 1.52. Ветвь HKCR\Directory\Background\ShellEx\ContextMenuHandlers {2559a1f0-21d7-11d4-bdaf-00c04f60b9f0} Поиск {2559a1f1-21d7-11d4-bdaf-00c04f60b9f0} Справка и поддержка {3080f90e-D7ad-11d9-bd98-0000947b0257} Переключение окон {2559a1f3-21d7-11d4-bdaf-00c04f60b9f0} Выполнить *{645ff040-5081-101b-9f08-00aa002f954e} Очистить корзину *{32714800-2e5f-11d0-8b85-00aa0044f941} Find People *эти команды не замещаются другими командами. REG-файл, добавляющий к контекстному меню рабочего стола команду ВЫПОЛНИТЬ, представлен ниже (расположение на прилагающемся к книге компакт-диске — Файлы реестра\Интерфейс\AddRunContext.reg. Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\Background\ShellEx\ContextMenuHandlers\{2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}] Добавление команд контекстного менюТакже давайте рассмотрим несколько дополнительных примеров добавления команд контекстного меню файлов при помощи ветвей реестра вида HKCR\«идентификатор»\shellex. Команда Копировать в папку… для папок Для добавления этой команды достаточно параметру (по умолчанию) ветви HKCR\Folder\shellex\ContextMenuHandlers\CopyTo задать значение {C2FBB630-2971-11D1-A18C-00C04FD75D13}. Команда Переместить в папку… для папок Для добавления этой команды достаточно параметру (по умолчанию) ветви HKCR\Folder\shellex\ContextMenuHandlers\MoveTo задать значение {C2FBB631-2971-11d1-A18C-00C04FD75D13}. Команда Добавить в список записи для папок Данная команда позволяет запустить проигрыватель Windows Media с открытой вкладкой ЗАПИСЬ, в списке которой уже будут отображаться файлы из соответствующей папки — вам будет достаточно лишь нажать на кнопку НАЧАТЬ ЗАПИСЬ, чтобы записать музыкальные файлы из папки на диск. Для добавления этой команды достаточно параметру (по умолчанию) ветви HKCR\Folder\shellex\ContextMenuHandlers\CopyToDisk задать значение {8DD448E6-C188-4aed-AF92-44956194EB1F}. Команда Воспроизвести с помощью Windows Media для папок Данная команда позволяет запустить проигрыватель Windows Media Player с уже загруженными в плей-лист музыкальными файлами, которые операционная система найдет в соответствующей папке. Для добавления этой команды достаточно параметру (по умолчанию) ветви HKCR\Directory\shellex\ContextMenuHandlers\OpenInFolder задать значение {CE3FB1D1-02AE-4a5f-A6E9-D9F1B4073E6C}. REG-файл, добавляющий данную команду, представлен ниже (расположение на прилагающемся к книге компакт-диске — Файлы реестра\Интерфейс\AddWMPContext.reg. Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\OpenInFolder] ="{CE3FB1D1-02AE-4a5f-A6E9-D9F1B4073E6C}" Команды Воспроизвести с помощью проигрывателя Windows Media и Добавить в список проигрывателя Windows Media для папок Данные команды позволяют либо запустить проигрыватель Windows Media Player с уже загруженными в плей-лист музыкальными файлами, которые операционная система найдет в соответствующей папке, либо добавить эти музыкальные файлы к плей-листу воспроизводимых в данный момент песен. Для добавления этих команд достаточно параметру (по умолчанию) ветви HKCR\Directory\shellex\ContextMenuHandlers\AddToList задать значение {F1B9284F-E9DC-4e68-9D7E-42362A59F0FD}. Продолжение следует Рейтинг: 4.00 [ 1 ]
Оцените: 1 2 3 4 5 moemesto.ru bobrdobr.ru
- добавить в социальные закладки
В начало записиОригинал статьи: http://www.onestyle.com.ua/txt.php?u=568
|
В избранное | ||