Новый участник
Сообщения: 20
Благодарности: 2
|
Профиль
|
Отправить PM
| Цитировать
Америки этим текстом, думаю, я не открою... но многим полезен будет. Авторство не моё. Где взял - не помню.
-----
Настройка контекстного меню Проводника
Контекстное меню папок и файлов Проводника, которое содержит такие команды, как "Открыть", "Изменить", "Открыть с помощью", "Создать" (с перечнем типов файлов) и т.д., может быть изменено по вашему желанию путём настройки некоторых разделов реестра. Также может быть изменено поведение системы при двойном щелчке на файле любого типа.
Хранение информации о зарегистрированных типах файлов
Информация о каждом зарегистрированном типе файлов и командах, применимых к нему, хранится в ветви реестра HKEY_CLASSES_ROOT. Каждому зарегистрированному типу файлов соответствуют два подраздела в разделе HKEY_CLASSES_ROOT. Первый подраздел имеет название, соответствующее расширению имени файла. В своём значении "по умолчанию" этот подраздел содержит идентификатор, который используется как название второго подраздела. Во втором подразделе хранятся описания команд, применяемых к данному типу файлов. Например, текстовому типу файлов в реестре соответствуют два подраздела - ".txt" и "txtfile". Второй подраздел "txtfile" содержит в своём значении "по умолчанию" текст описания для данного типа файлов (в данном случае - "Текстовый документ"), которое используется системой в различных случаях.
Информация, относящаяся одновременно ко всем типам файлов, хранится в подразделе "*" ветви реестра HKEY_CLASSES_ROOT. Информация, относящаяся ко всем незарегистрированным типам файлов, хранится в подразделе "Unknown" ветви реестра HKEY_CLASSES_ROOT. Информация, относящаяся к папкам, хранится в подразделах "Directory" и "Folder" ветви реестра HKEY_CLASSES_ROOT.
Настройка контекстного меню
Подраздел shell раздела "txtfile" содержит в себе подразделы, определяющие действия над данным типом файлов. Иногда эти подразделы называются "глаголами" (verbs). Если выбрать щелчком правой кнопки мыши файл с расширением "txt", то в контекстном меню будут присутствовать команды, соответствующие существующим глаголам.
Каждый подраздел-глагол может содержать подраздел command. Этот подраздел содержит командную строку в параметре "по умолчанию". Параметр "%1" в командной строке будет заменён путём и именем выбранного файла.
Если в подразделе-глаголе определено значение параметра "по умолчанию", это значение будет использовано как строка в контекстном меню. Если такое значение не определено, то сам глагол (т.е. имя подраздела) будет использован в качестве строки меню. Однако, при использовании некоторых определённых имён глаголов (подразделов) в контекстном меню отображаются предопределённые строки, зависящие от локализованной версии системы. Например, при использовании глагола "open" в контекстном меню может появиться строка "Открыть". Такие глаголы называются каноническими. Для некоторых канонических глаголов вообще не отображается строка меню, например, глагол "printto" зарезервирован для операций drag-and-drop.
Глагол команды "по умолчанию" (т.е. выполняемой при двойном щелчке и выделенной жирным шрифтом в контекстном меню) присутствует в качестве значения "по умолчанию" раздела "shell". Если такое значение не определено, используется канонический глагол "open", какой-либо другой канонический глагол или первый глагол из указанных (перечислено в порядке убывания приоритета).
Порядок команд в меню соответствует расположению глаголов в реестре (только команда "по умолчанию" стоит всегда первой). Для "искусственного" задания порядка команд можно перечислить имена глаголов через запятую в параметре "по умолчанию" раздела "shell".
Примечание: информация в реестре, касающаяся того или иного типа файлов и его глаголов, может быть изменена и без ручной правки реестра - при использовании диалога "Открыть с помощью" ("Выбор программы") с установкой флажка "Использовать для всех файлов такого типа" (вызывается из контекстного меню проводника) или при использовании вкладки "Типы файлов" диалога "Свойства папки" (вызывается из меню "Сервис" - "Свойства папки..." проводника).
Примеры настройки контекстного меню
Создадим команду открытия окна командного интерпретатора из контекстного меню папки с переходом (командой "cd") в эту папку. Это избавит от необходимости каждый раз после запуска (например, из меню "Пуск" - "Выполнить...") окна командного интерпретатора вручную набирать команду "cd" для перехода к нужному каталогу. Укажем в разделе
HKEY_CURRENT_USER\Folder\Shell\MenuText\Command\
значение "по умолчанию", содержащее такую командную строку:
cmd.exe /k cd "%1"
Кроме того, укажем в разделе
HKEY_CURRENT_USER\Folder\Shell\MenuText\
значение "по умолчанию", содержащее наименование команды контекстного меню, например, "Command Prompt Here". На этом команда (новый глагол "MenuText") полностью готова к работе.
Создадим команду открытия файла с незарегистрированным расширением как текстового в кодировке MS-DOS с помощью редактора MS-DOS. Такая команда может пригодиться, например, для быстрого открытия (с правильной интерпретацией кодировки) файлов в формате предоставления отчётности в Пенсионный фонд РФ (такие файлы могут быть автоматически сформированы различными программами, например бухгалтерскими). Укажем в разделе
HKEY_CLASSES_ROOT\Unknown\shell\OpenAsTextMSDOS\command\
значение "по умолчанию", содержащее такую командную строку:
C:\Windows\system32\edit.com "%1"
Кроме того, укажем в разделе
HKEY_CLASSES_ROOT\Unknown\shell\OpenAsTextMSDOS\
значение "по умолчанию", содержащее наименование команды контекстного меню, например, "Открыть как текст MS-DOS". На этом команда (новый глагол "OpenAsTextMSDOS") полностью готова к работе.
Создадим команду открытия MD-файла конфигурации 1С:Предприятия v7.7 двойным щелчком с запуском программы на базе того каталога, в котором находится MD-файл. Такая команда может пригодиться для быстрого запуска 1С:Предприятия при работе с любым файловым менеджером. Для этого в разделе
HKEY_CLASSES_ROOT\.MD\
в параметре "по умолчанию" найдём название второго раздела, который содержит перечень глаголов. Укажем в найденном таким способом разделе
HKEY_CLASSES_ROOT\<ИмяРаздела>\shell\open\command\
значение "по умолчанию", содержащее такую командную строку:
"C:\Program Files\1Cv77\BIN\1cv7s.exe" config /D"%1\.."
Кроме того, укажем в разделе
HKEY_CLASSES_ROOT\<ИмяРаздела>\shell\open\
значение "по умолчанию", содержащее наименование команды контекстного меню, например, "Открыть в конфигураторе". На этом команда (глагол "open") полностью готова к работе. Примечание: аналогичным способом можно создать команды контекстного меню MD-файла "Открыть монитор", "Открыть Предприятие" и "Открыть Предприятие монопольно", используя разные ключи запуска для 1cv7s.exe.
Настройка меню "Создать"
Данное меню открывается, если выбрать команду "Файл" - "Создать" в окне проводника, а также если щёлкнуть правой кнопкой мыши на рабочем столе или проводнике на свободном месте открытой папки и выбрать пункт "Создать". Это меню может быть изменено по вашему желанию путём настройки некоторых разделов реестра.
Заготовки для файлов, которые создаются с помощью меню "Создать", хранятся в каталоге ShellNew в папке WINDOWS. Команды создания файлов содержатся в реестре в разделах
HKEY_CLASSES_ROOT\<ИмяРаздела>\ShellNew\
"ИмяРаздела" совпадает с расширением имени файла, например ".txt". Строковый параметр FileName может содержать имя файла-шаблона, который находится в папке WINDOWS\ShellNew\, например "WINWORD8.DOC" для DOC-файлов. Другой вариант: если здесь же создать пустой строковый параметр NullFile, будет создаваться пустой файл нулевого размера.
Полезно также проводить не только добавление, но и удаление элементов из меню "Создать".
|