Настройка контекстного меню проводника

Все об администрировании рабочих станций Windows 95/98/NT/2000/XP/7/8. То, чего не найдешь в бескрайних просторах Интернета. Решения тех проблем, которые не решаются типовыми ответами, которые можно получить в техподдержке Майкрософта - а именно: переустановить продукт или купить какой-ть другой лицензионный диск.


Модератор: UncleFather

Аватара пользователя
UncleFather
Site Admin
Сообщения: 1505
Зарегистрирован: 17 авг 2004 16:20, Вт
Контактная информация:

Настройка контекстного меню проводника

Сообщение UncleFather »

Контекстное меню папок и файлов Проводника, которое содержит такие команды, как "Открыть", "Изменить", "Открыть с помощью", "Создать" (с перечнем типов файлов) и т.д., может быть изменено по вашему желанию путём настройки некоторых разделов реестра. Также может быть изменено поведение системы при двойном щелчке на файле любого типа.
Информация о каждом зарегистрированном типе файлов и командах, применимых к нему, хранится в ветви реестра HKEY_CLASSES_ROOT. Каждому зарегистрированному типу файлов соответствуют два подраздела в разделе HKEY_CLASSES_ROOT. Первый подраздел имеет название, соответствующее расширению имени файла. В своём значении "по умолчанию" этот подраздел содержит идентификатор, который используется как название второго подраздела. Во втором подразделе хранятся описания команд, применяемых к данному типу файлов. Например, текстовому типу файлов в реестре соответствуют два подраздела - ".txt" и "txtfile". Второй подраздел "txtfile" содержит в своём значении "по умолчанию" текст описания для данного типа файлов (в данном случае - "Текстовый документ"), которое используется системой в различных случаях.
Информация, относящаяся одновременно ко всем типам файлов, хранится в подразделе "*" ветви реестра HKEY_CLASSES_ROOT. Информация, относящаяся ко всем незарегистрированным типам файлов, хранится в подразделе "Unknown" ветви реестра HKEY_CLASSES_ROOT. Информация, относящаяся к папкам, хранится в подразделах "Directory" и "Folder" ветви реестра HKEY_CLASSES_ROOT.

Аватара пользователя
Bibigool
Сообщения: 41
Зарегистрирован: 17 авг 2004 23:13, Вт

Сообщение Bibigool »

Подраздел shell раздела "txtfile" содержит в себе подразделы, определяющие действия над данным типом файлов. Иногда эти подразделы называются "глаголами" (verbs). Если выбрать щелчком правой кнопки мыши файл с расширением "txt", то в контекстном меню будут присутствовать команды, соответствующие существующим глаголам.
Каждый подраздел-глагол может содержать подраздел command. Этот подраздел содержит командную строку в параметре "по умолчанию". Параметр "%1" в командной строке будет заменён путём и именем выбранного файла.
Если в подразделе-глаголе определено значение параметра "по умолчанию", это значение будет использовано как строка в контекстном меню. Если такое значение не определено, то сам глагол (т.е. имя подраздела) будет использован в качестве строки меню. Однако, при использовании некоторых определённых имён глаголов (подразделов) в контекстном меню отображаются предопределённые строки, зависящие от локализованной версии системы. Например, при использовании глагола "open" в контекстном меню может появиться строка "Открыть". Такие глаголы называются каноническими. Для некоторых канонических глаголов вообще не отображается строка меню, например, глагол "printto" зарезервирован для операций drag-and-drop.
Глагол команды "по умолчанию" (т.е. выполняемой при двойном щелчке и выделенной жирным шрифтом в контекстном меню) присутствует в качестве значения "по умолчанию" раздела "shell". Если такое значение не определено, используется канонический глагол "open", какой-либо другой канонический глагол или первый глагол из указанных (перечислено в порядке убывания приоритета).

Аватара пользователя
UncleFather
Site Admin
Сообщения: 1505
Зарегистрирован: 17 авг 2004 16:20, Вт
Контактная информация:

Сообщение UncleFather »

Порядок команд в меню соответствует расположению глаголов в реестре (только команда "по умолчанию" стоит всегда первой). Для "искусственного" задания порядка команд можно перечислить имена глаголов через запятую в параметре "по умолчанию" раздела "shell".
Примечание: информация в реестре, касающаяся того или иного типа файлов и его глаголов, может быть изменена и без ручной правки реестра - при использовании диалога "Открыть с помощью" ("Выбор программы") с установкой флажка "Использовать для всех файлов такого типа" (вызывается из контекстного меню проводника) или при использовании вкладки "Типы файлов" диалога "Свойства папки" (вызывается из меню "Сервис" - "Свойства папки..." проводника).
Пример1: Создание контекстного меню для открытия файлов неизвестных типов в DOS и Win-кодировке:

Код: Выделить всё

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Unknown\shell]
@="openas"

[HKEY_CLASSES_ROOT\Unknown\shell\openas]

[HKEY_CLASSES_ROOT\Unknown\shell\OpenAsTextMSDOS]
@="Открыть как текст MS-DOS"

[HKEY_CLASSES_ROOT\Unknown\shell\OpenAsTextMSDOS\command]
@="C:\\Windows\\system32\\edit.com \"%1\""

[HKEY_CLASSES_ROOT\Unknown\shell\OpenAsTextWin]
@="Открыть как текст Windows"

[HKEY_CLASSES_ROOT\Unknown\shell\OpenAsTextWin\Command]
@="C:\\Windows\\system32\\notepad.exe \"%1\""
Последний раз редактировалось UncleFather 17 май 2009 10:14, Вс, всего редактировалось 1 раз.
Аватара пользователя
Bibigool
Сообщения: 41
Зарегистрирован: 17 авг 2004 23:13, Вт

Сообщение Bibigool »

Пример2: Открытие FAR Manager в указанной папке:

Код: Выделить всё

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Folder\shell\MenuText]
@="Открыть FAR Manager"

[HKEY_CLASSES_ROOT\Folder\shell\MenuText\Command]
@="C:\\Program Files\\Far\\Far.exe \"%1\""

Пример3: Добавление контекстного меню "Открыть с помощью" для всех типов файлов:

Код: Выделить всё

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell]

[HKEY_CLASSES_ROOT\*\shell\openas]
@="Открыть с помощью"

[HKEY_CLASSES_ROOT\*\shell\openas\command]
@="C:\\WINDOWS\\rundll32.exe shell32.dll,OpenAs_RunDLL %1"

Примечание: При добавлении контекстного меню «Открыть с помощью» для всех типов фалов, - пропадает раскрывающийся список контекстного меню «Открыть с помощью»

Ответить