Добавляем собственные команды в контекстное меню Проводника
Однажды я уже рассказывал на Хабре, как можно добавить собственную команду в контекстное меню браузера Internet Explorer (Удобное дополнение к IE при написании обзоров / Internet Explorer / Хабрахабр). Сейчас я расскажу, как добавить свою команду в контекстное меню Проводника. Поехали.
Информация о контекстном меню Проводника и Рабочего стола хранится в разделе реестра HKEY_CLASSES_ROOT\Directory\Background\Shell. Именно отсюда система узнает, какие команды нужно отобразить в контекстном меню и какие программы нужно запустить, когда пользователь щелкает по выбранной команде меню. Таким образом, вооружившись этими знаниями, мы сможем сами создавать нужные нам команды.
Итак, чтобы добавить новую команду в контекстное меню, достаточно создать в разделе HKCR\Directory\Background\Shell новый подраздел. Предположим, мы хотим, чтобы в меню появилась команда, запускающая стандартный Блокнот. Создаем подраздел notepad и сразу можем проверить и убедиться, что в контекстном меню Рабочего стола появилась одноименная команда. Нам даже не пришлось перезагружать компьютер. Естественно, такая команда не очень нас устраивает, и мы хотим задать собственный текст, например, Блокнотик. Для этого редактируем параметр по умолчанию созданного подраздела и записываем для него новое значение, которое мы хотим видеть, например, прописываем слово Блокнотик. Снова проверяем и убеждаемся, что в контекстном меню появилась наша команда.
- MUIVerb – значение данного параметра заменяет собой значение параметра по умолчанию, т.е. мы можем в этом параметре задать имя для команды в меню.
- Extended – при наличии данного параметра без значения говорит системе о том, что команда должна отображаться только при нажатии клавиши Shift. Вы можете посмотреть на подраздел HKEY_CLASSES_ROOT\Directory\Background\shell\cmd, в котором содержится такой параметр. Поэтому, если держать нажатой клавишу Shift, то в контекстном меню появится команда Открыть окно команд.
Теперь перейдем к подразделам. Прежде всего, нужно создать подраздел command. Параметр по умолчанию данного подраздела должен содержать в себе команду, которая будет выполняться при выборе соответствующего элемента контекстного меню. В нашем случае, нужно прописать команду notepad.exe.
Как видите, несколько несложных операций в разделе реестра и мы получаем новую команду для контекстного меню Рабочего стола и Проводника. А зная алгоритм создания новой команды, вы можете изучить и отредактировать параметры от других программ, которые прописали свои разделы в вашей системе.
Включение/выключения эскизов
Рассмотрим практический пример создания собственной команды в меню Проводника. Если вы предпочитаете просматривать файлы в режиме Значки, то заметили, что, например, значки картинок отображаются в виде эскизов. В настройках папки можно изменить данное поведение и отключить показ эскизов. Но включать или отключать эти настройки очень утомительно. Судите сами – сначала надо нажать на клавишу Alt, чтобы появилась строка меню у Проводника, далее выбираем меню Сервис | Параметры папок…. После этого нужно переключиться на вкладку Вид и поставить или убрать флажок у команды Всегда отображать значки, а не эскизы. Упростим задачу при помощи реестра и небольшого VBS-сценария, который циклически меняет значения параметра IconsOnly в разделе HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced. Создадим новый раздел ToggleThumb в разделе HKEY_CURRENT_USER\Software\Classes\Directory\Background\Shell и присвоим параметру по умолчанию строковое значение Включить/Выключить эскизы. Тем самым мы создали новую команду для контекстного меню папки в Проводнике. Обратите внимание, что теперь мы используем раздел HKEY_CURRENT_USER, чтобы действие примера распространялось только на одного пользователя. Теперь создаем подраздел command и прописываем в параметре по умолчанию строку wscript.exe «%WinDir%\togglethumbs.vbs». Далее нужно создать сценарий, который будет переключать режим показа эскизов.
Сохраните созданный сценарий под именем togglethumbs.vbs и скопируйте его в папку Windows.
Теперь вы можете открыть Проводники и проверить работу новой команды. Для удобства я сначала выбрал режим Крупные значки, которые отображаются в виде эскизов.
Далее я выбрал в контекстном меню пункт Включить/Выключить эскизы и получил следующий результат – вместо эскизов я увидел значки программы Adobe Photoshop, ознакомительную версию которой я поставил несколько дней назад на своем компьютере.
Идею для данного примера я почерпнул со страницы http://www.winhelponline.com/blog/toggle-thumbnail-previews-right-click-menu-windows-vista-windows-7/ и немного модифицировал ее. Автор оригинального примера предлагает для большего удобства воспользоваться готовыми REG-файлами создания (togglethumbs.reg) и удаления (undo.reg) разделов для новой команды, а также готовый сценарий (togglethumbs.vbs). От себя добавлю, что копирование файла сценария в папку Windows, используемое автором идеи – не самый лучший вариант, так как данная папка является защищенной и не нужно засорять ее собственными файлами. Поэтому, если вы будете использовать пример на своем компьютере, то переделайте его таким образом, чтобы файл сценария находился в более доступном для пользователя месте.
Удаление содержимого папки без удаления самой папки
Практически аналогично добавляется собственная команда и в контекстное меню папки. Недавно я нашел один пример применения контекстного меню папки в Проводнике — Add Empty Folder Contents to Windows 7 Right Click Context Menu. | The Windows Club.
Автор примера рассказывает, как добавить в контекстное меню папки команду для удаления содержимого папки без удаления самой папки. Т.е. вам не придется открывать папку, выделять все файлы и нажимать на клавишу Delete, достаточно выбрать команду Удалить содержимое папки. Я немного модифицировал пример, чтобы он более органично смотрелся на русской версии Windows.
Для этого добавляем в раздел HKEY_CLASSES_ROOT\Directory\shell подраздел DeleteFolderContent и создаем в нем строковый параметр MUIVerb со строкой Удалить содержимое папки. Далее в разделе DeleteFolderContent создаем подраздел command и в его параметре по умолчанию прописываем строчку:
Все готово и можете пользоваться примером.
Заключение
Хочу предупредить, что я рассказал про основные приемы создания команд в контекстном меню Проводника. Реестр — достаточно сложная штука и существуют другие способы работы с контекстном меню.
Как добавить пункт
в контекстное меню
Чтобы работа с компьютером была удобной, в операционной системе Windows у каждого файла, папки или любого другого объекта есть контекстное меню. Открывается оно кликом правой кнопкой мышки по этому объекту.
Контекстное меню можно настраивать, добавляя и удаляя из него определенные пункты.
Об удалении пунктов читайте здесь. Ниже речь пойдет только об их добавлении в меню.
Чтобы добавить пункт в контекстное меню, необходимо внести изменения в системный реестр Windows. Сделать это можно путем «ручной» правки реестра или при помощи специальных программ (см. последний пункт этой статьи).
Первый способ немного сложный для новичков, но предоставляет более широкие возможности. В статье он рассмотрен максимально подробно. Для лучшего восприятия информация изложена в следующем порядке:
1. Как добавить простой пункт в контекстное меню файла, папки, Рабочего стола, значка «Компьютер» или Корзины;
2. Добавление в меню выпадающего списка из нескольких пунктов;
3. Как добавить пункт или выпадающий список только в меню файлов определенного типа.
1. Добавление в контекстное меню простого пункта
Для внесения изменений в системный реестр необходимо открыть Редактор реестра.
Кратко напомню, как работать в этом редакторе.
Чтобы открыть Редактор реестра нужно на клавиатуре нажать комбинацию клавиш Win+R, в открывшемся окне напечатать или скопировать туда с этой страницы слово regedit , после чего нажать клавишу Enter.
Окно Редактора реестра разделено на две части по вертикали. В левой его части находится проводник. Он предназначен для навигации. Например, чтобы открыть ветку реестра HKEY_CLASSES_ROOT/*/shell, необходимо в проводнике Редактора двойным кликом мышки открыть сначала раздел «HKEY_CLASSES_ROOT», в нем найти и таким же способом открыть раздел «*», а в нем — раздел «shell».
Подробно порядок работы в Редакторе реестра описан в этой статье.
Чтобы добавить пункт в контекстное меню файла, папки, Рабочего стола или любого другого объекта, необходимо открыть Редактор реестра и в соответствующей ветке создать новый раздел с необходимыми параметрами, в которых прописать название пункта, исполняемую им функцию и др.
Непосредственно о порядке создания этого раздела речь пойдет немного ниже. Сначала давайте разберемся, в какой именно ветке реестра его нужно создавать.
Все зависит от того, в контекстное меню какого объекта необходимо добавить пункт. Если это контекстное меню:
• файлов — радел нужно создавать в ветке:
• запоминающих устройств (диски, флешки и др.) — в ветке:
• значка «Компьютер» — в ветке:
• Рабочего стола — в ветке:
• значка «Корзина» — в ветке:
Теперь добавим новый пункт в контекстное меню одного из указанных объектов.
Например, в меню файлов добавим пункт, который будет открывать их в браузере Mozilla Firefox.
Порядок действий:
1. В Редакторе реестра открыть соответствующую ветку.
Поскольку в нашем примере пункт должен появиться в контекстном меню файлов, открываем ветку HKEY_CLASSES_ROOT/*/shell;
2. Создать в ней новый раздел.
С этой целью в проводнике Редактора необходимо щелкнуть правой кнопкой мышки по папке «shell», и в открывшемся списке выбрать «Создать» — «Раздел» (см. изображение). Назвать этот раздел можно как угодно, используя латинские буквы и цифры. Я назвал «Open to Firefox».
3. В новом разделе создать строковый параметр с названием MUIVerb (он определяет название пункта контекстного меню).
Для этого в проводнике Редактора реестра нужно щелкнуть правой кнопкой мышки по созданному разделу (который я назвал «Open to Firefox») и в появившемся списке выбрать «Создать» ⇒ «Строковый параметр» (см. изображение).
Новый строковый параметр появится в правой части Редактора реестра. Нужно присвоить ему название MUIVerb, после чего дважды щелкнуть по нему левой кнопкой мышки.
Затем в нижнем поле открывшегося окна указать словосочетание, которое будет отображаться в контекстном меню, и нажать кнопку ОК. Я написал «Открыть в Firefox» (см. изображение).
Кроме параметра MUIVerb, в созданный раздел аналогичным образом можно добавить еще несколько параметров (не обязательно). В частности:
• строковый параметр с названием Position. Он определяет, в каком месте контекстного меню будет находиться пункт. Ему можно присвоить одно из двух значений: Top (вверху) или Bottom (внизу). Если этот параметр не создавать, пункт будет отображаться в середине контекстного меню.
Я создал параметр Position и присвоил ему значение Bottom.
• строковый параметр с названием Icon. Он определяет, какая иконка будет отображаться в контекстном меню слева от пункта.
В значении этого параметра нужно указать путь к файлу иконки формата .ICO. Можно также указать путь к какой-нибудь программе. В таком случае будет использоваться иконка этой программы.
Поскольку создаваемый мною пункт должен открывать файл в браузере Firefox, я указал в нем путь к файлу этого браузера.
• строковый параметр Extended. Если добавить этот параметр в созданный раздел, пункт контекстного меню станет «скрытым». Чтобы он отображался, перед открытием контекстного меню нужно будет нажать и удерживать клавишу Shift.
Этому параметру не нужно присваивать никакого значения (оставить пустым).
В свой пример этот параметр я решил не добавлять.
4. В проводнике редактора реестра снова щелкнуть правой кнопкой мышки по созданному разделу (в моем случае он с названием «Open to Firefox») и в появившемся списке выбрать «Создать» ⇒ «Раздел».
В нашем разделе появится еще один раздел, которому необходимо присвоить название command.
5. Выделить раздел command в проводнике Редактора реестра (щелкнуть по нему мышкой). После этого в правой части Редактора дважды щелкнуть мышкой по параметру с названием «(По умолчанию)».
Затем в нижнем поле открывшегося окна, в поле «Значение», необходимо указать путь к программе, которая должна открываться создаваемым пунктом контекстного меню.
В моем случае пункт должен открывать файл в окне Firefox, поэтому я прописал путь к этому браузеру.
Важно. Через пробел от пути к программе я добавил метку «%1» (см. изображение). Она указывает на то, что пункт должен не просто запустить программу, но и открыть файл в ее окне (без этой метки пункт будет запускать пустое окно браузера).
Новый пункт контекстного меню создан. У меня он получился таким:
2. Добавление в меню
выпадающего списка из нескольких пунктов
Кроме простых пунктов, в контекстное меню можно добавлять многоуровневые выпадающие списки.
Предлагаю рассмотреть порядок их создания. В качестве примера добавим в меню файлов пункт «Открыть в браузере», из которого будет выпадать список из 5 браузеров (см. изображение).
Порядок действий:
1. В соответствующем контекстном меню создать простой пункт. При наведении на него будет появляться выпадающий список. Действовать при этом нужно так, как описано выше, за исключением п.5 (раздел command создавать не нужно).
То есть, необходимо открыть соответствующую ветку реестра, создать в ней раздел и добавить в него несколько строковых параметров:
• с названием MUIVerb, в значении которого указать название пункта (обязательно);
• с названием Position и значением Bottom или Top (не обязательно);
• с названием Icon и указанием пути к файлу иконки (не обязательно);
Поскольку мне нужно создать выпадающий список в меню файлов, я:
• открыл ветку реестра HKEY_CLASSES_ROOT/*/shell ;
• создал там новый раздел (назвать его можно как угодно, я назвал spisok) ;
• в этом новом разделе создал строковый параметр с названием MUIVerb и значением «Открыть в браузере».
Кроме того, чтобы пункт находился внизу, я создал в этом разделе строковый параметр с названием Position и значением Bottom.
2. Кроме перечисленных строковых параметров, в созданном разделе нужно создать еще один строковый параметр и назвать его SubCommands. Этот параметр превращает обычный пункт контекстного меню в выпадающий список.
После создания параметра дважды щелкнуть по нему левой кнопкой мышки и в его значении указать несколько коротких названий (любых), используя латинские буквы и цифры. Количество этих названий должно соответствовать количеству пунктов в будущем выпадающем списке. Записывать их нужно через точку с запятой, без пробелов. Использование нескольких одинаковых названий не допускается.
Поскольку выпадающий список из моего примера должен включать 5 браузеров, я придумал 5 названий: raz1, raz2, raz3, raz4, raz5. Записав их через точку с запятой, я получил следующее: raz1;raz2;raz3;raz4;raz5 (см. изображение).
3. В проводнике Редактора реестра перейти в ветку
В этой ветке для каждого пункта выпадающего списка необходимо создать новый раздел. Создаваемым разделам необходимо присвоить названия, которые были указаны в значении строкового параметра SubCommands (см. предыдущий пункт).
Как помните, в своем примере в параметре SubCommands я указал 5 названий: raz1, raz2, raz3, raz4, raz5. Этими названиями я и назвал 5 новосозданных разделов, см. изображение.
4. В каждом из новосозданных разделов необходимо сделать следующее:
• дважды щелкнуть левой кнопкой мышки по строковому параметру с названием «(По умолчанию)» и в открывшемся окне указать название пункта выпадающего меню (обязательно). В каждом из моих 5 разделов я указал здесь название браузера (raz1 — Firefox, raz2 — Opera, raz3 — Chrom, raz4 — Яндекс.Браузер, raz5 — Safari).
• в каждый из созданных разделов добавить строковый параметр с названием Icon (не обязательно) и указать в нем путь к иконке, которая должна отображаться в контекстном меню рядом с пунктом (точно так же, как и в случае с простым пунктом, см. выше);
• в каждом из созданных разделов создать еще один раздел и назвать его command. В разделе command дважды щелкнуть мышкой по параметру с названием «(По умолчанию)» и в открывшемся окне указать путь к программе, которую должен запускать пункт выпадающего списка.
В каждом из моих 5 разделов здесь я указал путь к соответствующему браузеру. И поскольку пункт должен не только запускать браузер, но и открывать файл в его окне, через пробел от пути я добавлял метку «%1», см. изображение.
Вот и все. В результате у меня получился выпадающий список из 5 браузеров (см. изображение выше).
3. Как добавить пункт
только в меню файлов определенного типа
Иногда возникает необходимость добавить пункт в контекстное меню не всех файлов, а только файлов определенного типа, например, файлов формата .txt или .jpeg. Давайте разберемся, как это сделать.
Выше уже говорилось, что для добавления пунктов в контекстное меню абсолютно всех файлов нужно создать соответствующие записи в ветке реестра HKEY_CLASSES_ROOT/*/shell .
Чтобы добавить пункт только в меню файлов определенного типа, необходимо добавить те же записи в другую ветку. Что это за ветка — зависит от типа файла и установленного на компьютере программного обеспечения. На каждом конкретном компьютере она будет другой. Но ее всегда можно определить самостоятельно.
Рассмотрим, как это делается, на примере файла формата .jpeg
Порядок действий:
1. В Редакторе реестра открыть раздел HKEY_CLASSES_ROOT, найти в нем папку, название которой соответствует требуемому расширению файла, и выделить ее (один раз щелкнуть по ней левой кнопкой мышки).
Учитывая, что в качестве примера был взят файл .jpeg, я нашел и выделил папку с названием «.jpeg».
2. В правой части Редактора реестра дважды щелкнуть мышкой по строковому параметру с названием «(По умолчанию)» и посмотреть, что указано в его значении. То, что там указано, является названием папки в разделе HKEY_CLASSES_ROOT, в которую необходимо перейти.
На моем компьютере в значении этого параметра указано «jpegfile». Значит, мне необходимо перейти в ветку HKEY_CLASSES_ROOT/jpegfile
3. Перейдя в указанную папку, необходимо найти в ней раздел с названием «shell». Если такого раздела там нет, его необходимо создать. Этот раздел и есть веткой реестра, в которую необходимо добавлять соответствующие записи для создания пункта контекстного меню.
В моем примере, это ветка HKEY_CLASSES_ROOT/jpegfile/shell
4. Программы для добавления пунктов в контекстное меню
Новые пункты в контекстное меню можно добавлять при помощи программ. Вот названия некоторых из них:
Как добавить пункт в контекстное меню
Добавим пункты в контекстное меню проводника windows 10.
- HKEY_CLASSES_ROOT\Directory\Background\shell
- Нажимаем «ПКМ»—правой клавишей мышки на строке shell.
- Создать.
- Раздел.
- Нажимаем ПКМ на сделанном разделе, в представленном случае «смайте».
- Создать.
- Раздел.
- Выбрали исполняемой (.exe) файл игры, программы.
- Нажимаем Shift + Правый клик на smite.exe, появится «Копировать как путь«. Только при нажатии сочетания кнопок покажется эта строчка.
- 1. Выделяем раздел
- 2. Открываем окно «параметры»
- 3. Ставим ползунок мыши в строку значение
- 4. Нажимаем «ПКМ» вставить
- 1. Выделяем созданный раздел с лева в столбце.
- 2. Нажимаем на пустом поле с право Создать.
- 3. Строковый параметр.
- 4. Задаем имя icon, обозначаем путь к местонахождению игрушки.
HKEY_CLASSES_ROOT\Directory\Background\shell
- Нажимаем «ПКМ» на папке shell.
- Создать раздел.
- Придумайте имя. Я прописал menu 101.
- MUIVerb (имя для отражения).
- SubCommands (отражение имен).
- Icon (отражение картинки).
- Position (позиция: выше, ниже).
- Задавали icon. (присвоил путь к одной из игр, exe файлу, автоматом задаст иконку).
- Position в контекстном табло, не выставлял, можете написать «Top«—сверху, «Bottom«—снизу.
- SubCommands названия имен, которые мы писали через » ; » (smite;Tomb Raider). На картинке показаны иконки перед названием игрушек. Мы их будем задавать дальше. У вас должно получится как тут, только без иконок игр.
- Отображаемое имя, которое писали в значении MUIVerb.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\Shell
Как добавить любое приложение в контекстное меню правой кнопки мыши в Windows 11/10
Если у вас есть определенные приложения, которые нужно часто использовать, вместо того, чтобы искать их каждый раз и открывать их, вы можете быстро получить доступ к этим приложениям из контекстного меню, вызываемого правой кнопкой мыши. Это сэкономит ваше время и силы.
В этой статье давайте рассмотрим простой способ добавления любого приложения в контекстное меню Windows 10, 11, вызываемое правой кнопкой мыши.
Действия, которые необходимо выполнить, чтобы добавить любое приложение в контекстное меню, вызываемое щелчком правой кнопкой мыши в Windows 10,11
Шаг 1. Откройте диалоговое окно «Выполнить» с помощью клавиш Windows + R.
Шаг 2: Введите regedit и нажмите Enter.
Программы для Windows, мобильные приложения, игры — ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале — Подписывайтесь:)
Шаг 3. В открывшемся окне UAC с запросом разрешений нажмите Да.
Редактирование реестра может навредить системе даже при малейшей ошибке. Перед продолжением рекомендуется сделать резервную копию реестра. Чтобы сделать резервную копию, в редакторе реестра–> выберите «Файл» -> «Экспорт» -> «Сохраните файл резервной копии».
Шаг 4. В окне редактора реестра на панели поиска вверху скопируйте и вставьте следующее место.
Шаг 5: В ключе оболочки создайте подключа (подпапку). Для этого щелкните правой кнопкой мыши ключ оболочки и выберите «Создать»> «Ключ».
Шаг 6: Назовите вновь созданный файл с именем, которое вы хотите отображать в контекстном меню. Для демонстрации мы добавим Окно выполнения. Вы можете добавить любое приложение по вашему выбору.
Шаг 7. В разделе «Выполнить» создайте подраздел с именем command. Для этого щелкните правой кнопкой мыши клавишу «Выполнить», выберите «Создать»> «Ключ» и назовите ее как команду.
Шаг 8: Теперь сверните редактор реестра и нажмите кнопку поиска на панели задач.
Шаг 9: Введите имя необходимого приложения. В этом случае приложение «Выполнить».
Шаг 10: Щелкните правой кнопкой мыши на «Выполнить» и выберите расположение «Открыть файл».
Шаг 11: Найдите необходимое приложение, щелкните его и снова выберите «Открыть расположение файла».
Шаг 12: В открывшемся окне найдите нужное приложение и щелкните по нему. Выбрав приложение, щелкните его правой кнопкой мыши.
Шаг 13: В контекстном меню выберите Копировать как путь.
Шаг 14: В окне редактора реестра в папке команд дважды щелкните раздел (по умолчанию) с правой стороны.
Шаг 15: В открывшемся окне «Редактировать строку» под разделом данных значения введите абсолютный путь к приложению.
Шаг 16: Нажмите кнопку ОК.
Вот и все, теперь вы сможете увидеть приложение в контекстном меню.
Щелкните правой кнопкой мыши на рабочем столе, в появившемся контекстном меню выберите Показать дополнительные параметры.
В появившемся меню вы должны увидеть добавленное вами приложение.
Это все. Надеюсь это поможет.
Спасибо за чтение.
Программы для Windows, мобильные приложения, игры — ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале — Подписывайтесь:)