14 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как внести параметры папок в контекстное меню

Добавляем собственные команды в контекстное меню Проводника

Информация о контекстном меню Проводника и Рабочего стола хранится в разделе реестра HKEY_CLASSES_ROOTDirectoryBackgroundShell. Именно отсюда система узнает, какие команды нужно отобразить в контекстном меню и какие программы нужно запустить, когда пользователь щелкает по выбранной команде меню. Таким образом, вооружившись этими знаниями, мы сможем сами создавать нужные нам команды.

Итак, чтобы добавить новую команду в контекстное меню, достаточно создать в разделе HKCRDirectoryBackgroundShell новый подраздел. Предположим, мы хотим, чтобы в меню появилась команда, запускающая стандартный Блокнот. Создаем подраздел notepad и сразу можем проверить и убедиться, что в контекстном меню Рабочего стола появилась одноименная команда. Нам даже не пришлось перезагружать компьютер. Естественно, такая команда не очень нас устраивает, и мы хотим задать собственный текст, например, Блокнотик. Для этого редактируем параметр по умолчанию созданного подраздела и записываем для него новое значение, которое мы хотим видеть, например, прописываем слово Блокнотик. Снова проверяем и убеждаемся, что в контекстном меню появилась наша команда.
http://s16.radikal.ru/i191/0912/73/335602d73678.jpg

Теперь настраиваем другие параметры, чтобы созданная команда реагировала на щелчки мышью. Подраздел может содержать в себе другие вложенные подразделы и различные параметры строкового типа. Сначала рассмотрим параметры. Мы уже знаем, что параметр по умолчанию определяет название команды. Также можно использовать следующие параметры (привожу только часть возможных параметров):
MUIVerb – значение данного параметра заменяет собой значение параметра по умолчанию, т.е. мы можем в этом параметре задать имя для команды в меню.
Extended – при наличии данного параметра без значения говорит системе о том, что команда должна отображаться только при нажатии клавиши Shift. Вы можете посмотреть на подраздел HKEY_CLASSES_ROOTDirectoryBackgroundshellcmd, в котором содержится такой параметр. Поэтому, если держать нажатой клавишу Shift, то в контекстном меню появится команда Открыть окно команд.

Теперь перейдем к подразделам. Прежде всего, нужно создать подраздел command. Параметр по умолчанию данного подраздела должен содержать в себе команду, которая будет выполняться при выборе соответствующего элемента контекстного меню. В нашем случае, нужно прописать команду notepad.exe.

Рассмотрим практический пример создания собственной команды в меню Проводника. Если вы предпочитаете просматривать файлы в режиме Значки, то заметили, что, например, значки картинок отображаются в виде эскизов. В настройках папки можно изменить данное поведение и отключить показ эскизов. Но включать или отключать эти настройки очень утомительно. Судите сами – сначала надо нажать на клавишу Alt, чтобы появилась строка меню у Проводника, далее выбираем меню Сервис | Параметры папок…. После этого нужно переключиться на вкладку Вид и поставить или убрать флажок у команды Всегда отображать значки, а не эскизы. Упростим задачу при помощи реестра и небольшого VBS-сценария, который циклически меняет значения параметра IconsOnly в разделе HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced. Создадим новый раздел ToggleThumb в разделе HKEY_CURRENT_USERSoftwareClassesDirectoryBackgroundShell и присвоим параметру по умолчанию строковое значение Включить/Выключить эскизы. Тем самым мы создали новую команду для контекстного меню папки в Проводнике. Обратите внимание, что теперь мы используем раздел HKEY_CURRENT_USER, чтобы действие примера распространялось только на одного пользователя. Теперь создаем подраздел command и прописываем в параметре по умолчанию строку wscript.exe “%WinDir%togglethumbs.vbs”. Далее нужно создать сценарий, который будет переключать режим показа эскизов.

Set WshShell = CreateObject(“WScript.Shell”)
strValue = “HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerAdvancedIconsOnly”
strIconsOnly = WshShell.RegRead(strValue)
If strIconsOnly = 0 Then
WshShell.RegWrite strValue,1,”REG_DWORD”
Else
WshShell.RegWrite strValue,0,”REG_DWORD”
End If
WshShell.SendKeys “

Сохраните созданный сценарий под именем togglethumbs.vbs и скопируйте его в папку Windows.
Теперь вы можете открыть Проводники и проверить работу новой команды. Для удобства я сначала выбрал режим Крупные значки, которые отображаются в виде эскизов.
http://s56.radikal.ru/i154/0912/a4/c0f1efcef371.jpg
Далее я выбрал в контекстном меню пункт Включить/Выключить эскизы и получил следующий результат – вместо эскизов я увидел значки программы 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_ROOTDirectoryshell подраздел DeleteFolderContent и создаем в нем строковый параметр MUIVerb со строкой Удалить содержимое папки. Далее в разделе DeleteFolderContent создаем подраздел command и в его параметре по умолчанию прописываем строчку:

cmd /c “cd /d %1 && del /s /f /q *.*”

Все готово и можете пользоваться примером.

Хочу предупредить, что я рассказал про основные приемы создания команд в контекстном меню Проводника. Реестр — достаточно сложная штука и существуют другие способы работы с контекстном меню.

Урок #48. Контекстное меню файлов и папок

Теперь давайте рассмотрим контекстные меню (рис.148 и 149) более подробно. В контекстных меню есть команды, которые используются редко, так как их проще вызывать не из контекстного меню, а просто производя какое либо действие мышкой. Так например, в контекстном меню файла (рис.148) первые три пункта используются крайне редко, так как открыть файл гораздо проще два раза кликнув на нем мышкой, нежели выбрав пункт Открыть из контекстного меню. С печатью та же ситуация. Обычно файл удобнее выводить на печать из программы, в которой он был создан, нежели из контекстного меню. Пункт Изменить применяется очень редко. Дело в том что для большинства файлов пункты Открыть и Изменить будут выполнять одно и тоже действие – открытие файла. Но есть специальные командные файлы, при открытии которых запускаются команды, которые они содержат. Именно для таких файлов и удобно использовать пункт Изменить.

В контекстном меню могут появляться дополнительные элементы, так как некоторые программы могут в него помещать свои инструменты. Так, например, вы видите пункт «Сканировать Текстовый документ.txt» (рис.148). Этот пункт был добавлен антивирусной программой, которая была установлена на моем компьютере.

Следующий пункт Открыть с помощью иногда бывает очень полезен. Дело в том, что у вас на компьютере может быть установлено несколько программ, работающих с одними и теми же типами файлов. Т.е. у вас на компьютере может быть установлен проигрыватель музыкальных файлов и программа для редактирования музыкальных файлов. Когда вы запускаете музыкальный файл из программы Проводник, то файл открывается и проигрывается в программе-проигрывателе. Но если вы захотите отредактировать музыкальный файл, например, подрезать его или изменить громкость, то вам понадобится программа-редактор. В этом случае вы можете воспользоваться опцией Открыть с помощью и выбрать из предложенного списка программ нужную в настоящий момент вам. В этом списке будут перечислены все программы, которые умеют работать с файлами данного типа (рис.151).

В нашем случае мы можем выбрать одну из двух программ – WordPad и Блокнот. Эти две программы умеют работать с текстовыми файлами. О том, как операционная система Windows понимает, какие программы умеют работать с какими типами файлов, мы поговорим чуть позже.

Следующая опция контекстного меню Восстановить прежнюю версию связана с возможностью Windows создавать архивные копии файлов и папок. Об этой возможности в этом курсе рассказываться не будет, поэтому и пункт этот мы пропускаем.

Следующий пункт меню позволяет отправить объект, на котором вызвано контекстное меню, в одну из программ или создать его копию (рис.152). Большинство из этих опций связаны с возможностями, о которых мы еще не разговаривали, поэтому мы в дальнейшем вернемся к этому меню. Но так как о копировании мы уже знаем, то последние два пункта (рис. 152) нам уже по зубам. В вашем случае будут отображаться не только диск С и D, а все локальные диски вашего компьютер. Выбрав из контекстного меню нужный диск, мы автоматически отправим копию файла, на котором было вызвано контекстное меню на этот диск, т.е. в корневую папку.

Ну а дальше идут уже известные нам пункты Вырезать, Копировать, Удалить и Переименовать. Есть еще пункт Создать ярлык и о нем мы поговорим сразу, как только разберемся со свойствами файла. Но перед тем как мы выберем Свойства в контекстном меню, давайте более подробно остановимся на понятии файла.

Домашнее задание:

  1. Запустите программу Проводник и изучите ее содержимое. На сколько логических дисков разбит жесткий диск вашего компьютера? Какие буквы за ними закреплены? Есть ли на вашем компьютере устройство для чтения CD или DVD дисков?
  2. Попробуйте запустить программу Проводник всеми способами, описанными в уроке. Выберите способ удобный вам.
  3. Поперемещайтесь по структуре ваших папок с помощью программы Проводник. Выбирайте папку в области 1 (рис.144) и изучайте ее содержимое в области 2.
  4. Зайдите в любую папку на вашем компьютере (желательно расположенную «поглубже» в структуре файлов и папок) и в адресной строке программы Проводник вызовите путь (рис.147). Разберитесь с этой текстовой записью адреса папки. Это очень важный момент, так как обычно путь к файлам и папкам указывается именно в виде такой записи. Поэтому подобная запись вам встретится еще неоднократно.
  5. Изучите контекстное меню, вызванное на файле (рис.148) и папке (рис.149). Сравните их.

Вадим Стеркин

Добавление своих пунктов в контекстные меню рабочего стола и компьютера позволяет ускорить доступ к элементам панели управления, любимым программам и утилитам. Добавить такой пункт очень просто, и через минуту вы уже будете знать, как это сделать. Для примера я покажу, как добавить вызов панели управления из контекстного меню.

Панель управления в контекстном меню

Откройте редактор реестра и приступим!

  1. В зависимости от того, где вы хотите создать пункт меню, выберите раздел.
    • для меню «Компьютер» перейдите в раздел:
    • для меню рабочего стола перейдите в раздел:
  2. Щелкните правой кнопкой мыши по разделу shell и выберите пункт СоздатьНовый раздел. Имя для раздела можно выбрать любое, но оно обязательно должно быть латинское. Назовите его, например, Item1. В этом разделе создайте строковые параметры:
    • MUIVerb (обязательно) отвечает за название пункта меню, поэтому значение можете выбирать любое. Я назвал свой Панель управления.
    • Icon (необязательно) задает значок для пункта меню. Можно задать путь к библиотеке (dll) и номер ресурса (значка), либо полный путь к исполняемому файлу (если он в системной папке, достаточно указать только имя). Для пункта «Панель управления» я задал стандартный значок imageres.dll,22 (сначала имя файла, а через запятую – номер ресурса). Впрочем, можно было указать просто control.exe.
    • Position (необязательно) отвечает за расположение пункта в контекстном меню. Вы можете задать ему значение Top (вверху) или Bottom (внизу). Если значение не задавать, пункт меню окажется в его середине. Я расположил свой пункт вверху.
    • Extended (необязательно) отвечает за отображение пункта в меню. Когда параметр присутствует, чтобы увидеть созданный пункт, нужно вызывать контекстное меню, удерживая нажатой клавишей SHIFT. Этому параметру не требуются значения.
  3. В разделе Item1 создайте подраздел command.
  4. В подразделе command дважды щелкните параметр (По умолчанию) и введите команду или полный путь к программе. Для вызова панели управления я указал control.exe (полный путь не нужен, поскольку исполняемый файл находится в системной папке).
Читать еще:  Где найти папку system на андроиде

Если вы хотите создать два пункта, создайте раздел Item2 и повторите шаги 3 – 5. Таких пунктов можно сделать сколько угодно.

Давайте посмотрим, что получилось в реестре.

Параметры пункта меню в реестре

Кстати, уже можно посмотреть – в контекстном меню появился пункт «Панель управления», и он работает!

Этот способ можно использовать не только для выполнения команд и запуска программ, но и для открытия сайтов в любимом браузере. На шаге 4 укажите путь к исполняемому файлу браузера и URL.

Чтобы открыть свой блог в Internet Explorer, я бы добавил команду

Чтобы открыть свой блог в Opera, я бы добавил команду

Выглядит это примерно так:

Свои пункты в контекстном меню

Заодно вы узнали, как задавать параметры командной строки исполняемым файлам. В данном случае таким параметром является URL.

Вдоволь наигравшись с пунктами меню, вы заметите, что оно сильно разрослось. Можно сделать его более компактным, добавляя раскрывающиеся меню, которые будут содержать свои пункты.

Раскрывающиеся меню в контекстном меню

Этому вопросу посвящен отдельный рассказ.

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Об авторе

Вадим является владельцем этого блога, и большинство записей здесь вышло из-под его пера. Подробности о блоге и авторе здесь.

Вас также может заинтересовать:

Подпишитесь на бесплатные уведомления о новых записях и получите в подарок мою книгу об ускорении загрузки Windows!

комментариев 80

Тема интересная, но нельзя ли прикладывать файл реестра, чтоб не заниматься: «нажмите, дважды щелкните, перейдите»?
Иначе это больше похоже на статью kb, интересную, но не удобную.

Александр, понимаете, добавить ведь можно все что угодно. Я же не знаю, какие именно пункты вам нужны в меню. И потом, проделав это в реестре, вы лучше поймете, как это работает. Просто импортировав файл вы ничему не научитесь, а превращать блог в коллекцию твиков я изначально не планировал.

Хорошо, я добавил в статью файл с примером для панели управления.

В статье о раскрывающихся меню REG-файлы будут обязательно, и даже больше 🙂

Спасибо за материал! Подскажите, пожалуйста, как управлять расположением созданного пункта в меню (как поставить его вверх или в самый низ, скажем), и самое главное — есть ли способ вставить разделитель (горизонтальную черту)? 🙂

Александр, рассказ об упорядочивании собственных пунктов меню включен в следующую статью, где рассказывается о создании раскрывающихся меню. Так что придется подождать 10 дней 🙂

Vadim Sterkin, ничего страшного, подождем. я уже подписался на ваш блог. Еще раз спасибо 🙂

Спасибо за материал!
Скажите, а как через реестр добавить произвольный пункт в меню корзины?
Понимаю, что вероятно аналогично, только не знаю где эти пункты для корзины лежат…

Chacker, спасибо за отзыв 🙂 Думаю, вам нужно сюда

Эта тема мне тоже понравилась.
Спасибо за инфу.

Тут как добавить а у меня вопрос как удалить вот эти пункты:

в XP это я делал через програмку TweakUI. а вот в 7-е она не работает.

filosov, давайте с вами договоримся. На конкретные вопросы по статье я рад отвечать, если в ней самой нет ответа.

Но для всего остального есть форум. Учитесь пользоваться фильтрами и не надо будет тратить время на вопросы, потому что ответы уже там есть http://cut.ms/9GA

Просто мне у вас больше нравится! 😉

Очень благодарю за наводку. 😉

filosov, я очень рад, что вам у меня нравится 🙂 И если бы я мог, то оказывал бы каждому индивидуальную поддержку и внимание. Но я не могу — у меня всего одна голова и лишь две руки, и именно поэтому существует форум 🙂

А как добавить разделитель в контекстное меню файлов и папок

Здраствуй Вадим,вот тут выше был вопрос о том нет-ли у тебя уже готового рег-файла (для выпадающего меню) ,чтоб только оставалось имя ветки переназначит в свое и вставить,а-то так долго в реестре ковырятся,тем-более я там полный ноль
(на нашем форуме осзоне пытался задать вопрос, мою тему закрыли)

DeMoN23, если речь идет о раскрывающихся меню, то об этом был рассказ в другой статье. Там есть готовые файлы и даже установщик.

Что же касается

DeMoN23: а-то так долго в реестре ковырятся,тем-более я там полный ноль »

то я пишу для людей, желающих расширить свой кругозор и повысить знания Windows, а не для ленивых полных нолей 🙂

Хорошо спасибо за ваш ответ, буду юзать разбиратся сам ,далее:)

Контекстное меню рабочего стола. В реестре нет такого раздела
HKEY_CLASSES_ROOTDesktopBackgroundShell. У меня это
HKEY_CLASSES_ROOTDirectorBackgroundShell, Windows Vista.
Значки не отображаються не в контекстном меню компьютера и рабочего стола. Подскажите, пожалуста.

Анатолий, материал полностью применим только к Windows 7, что указано под заголовком.

Подскажите пожалуйста как сделать следующие:

Мне нужно, в контекстное меню рабочего стола добавить пункт, с помощью которого у меня будет открываться окно смены обоев (изменение фона рабочего стола), но я не знаю как выглядит ссылка на это меню и где ее взять =( Хелп =(

Андрей, в Windows 7 уже есть такой пункт — Следующее фоновое изображение рабочего стола. Просто нужно в персонализации указать папку или библиотеку, в которой лежат ваши обои.

Vadim Sterkin,

Так как у меня версия Home Basic, я не имею пункта «Персонализация» =(

Андрей: Так как у меня версия Home Basic »

Вы думате, я телепат? Добавьте команду:

Большое спасибо. Всё получилось.

Я прошу прощения, не по теме, но может быть вы подскажите как перенести ProgramData на другой диск? Program Files я уже перенёс, а вот с ProgramData полная засада.

kliaksa, не экономьте на размере системного раздела, и не нужно будет переносить не только ProgramData, но и Program Files. Такой будет мой ответ 🙂

Все очень классно, много почерпнул.
Вопрос:
Как добавить в контекстное меню рабочего стола папку
Изображения
Или не понимаю, или

Владимир, используйте команду

Получилось, спасибо, но открывается почему-то
Мои документы

Владимир, у меня открывается все как нужно. См. параметры командной строки explorer.exe, тестируйте в диалоге Win+R и при необходимости обращайтесь в форум.

WIN+К открывает правильно, а из под к. меню не хочет

В связи с вашим наездом, оставляю вас наедине с проблемой 🙂

Да ну не было от меня ничего обидного. Просто написал как есть.Если чо, прошу прощения. А не получилось, ну и фиг с ним.

Подскажите пожалуйста какую команду задать в command для Диспетчера устройств

Vadim Sterkin,
Здравствуйте Вадим.. Подскажите пожалуйста, какой путь прописать в подпапке «command» для того, чтобы можно было вызвать меню мыши(точнее: интересует изменение курсоров)? в контекст.меню рабочего стола создал строку «Курсоры», всё сделал как положено, но незнаю какой путь вписать, чтобы вызвать команду «Изменение указателей мыши»

Vadim Sterkin,

Вот Спасибо! я уж думал не дождусь))
*Интересно: а как Вы узнаёте нужный путь?

я уж думал не дождусь))

Очень странное заявление с учетом того, что ответ поступил через 12 минут после вопроса в 1:30 ночи по Москве.

*Интересно: а как Вы узнаёте нужный путь?

Я смотрю путь в Process Explorer.

Здравствуйте Вадим. Подскажите пожалуйста, можно ли в контекстном меню к пунктам (вырезать, копировать, удалить) добавить иконки?

Михаил, я не знаю, и сомневаюсь, что это достигается правкой реестра.

Vadim Sterkin,
Здравствуйте Вадим. Не подскажите как добавить пункты: «стереть диск» и «форматировать» в контекстном меню CD-привода (при вставленном компакт-диске в привод). у меня нет таких пунктов.

Диск должен быть перезаписываемый. Если это так, и опции отсутствуют, вам надо обратиться в форум Windows 7.

а нельзя автоматизировать процесс программой ?
для юзеров) думаю прога уйдет на расхват

Иван, я не программист, но не исключаю, что вас устроит это. А так, программы есть, поищите.

Vadim Sterkin,

спасибо )
немного под учу C и C# и посмотрю можно ли сделать программу
для простого и быстрого изменения контекстного меню
если сделаю отправлю вам)

Может подскажите, как встроить в контекстное меню — искать выделенное слово в Яндексе?

Дмитрий, какое может быть выделенное слово, если вы щелкаете по рабочему столу или значку Компьютер?

Vadim Sterkin,

Вот что мне нужно. Читаю текст в текстовом редакторе или в почтовой программе, или в любом другом окне. Мне интересно какое-либо слово в этом тексте. Я его выделяю и на выделенном тапаю правой кнопкой мыши. Появляется контекстное меню со стандартными — копировать/вставить. Хочется, чтобы в этом меню присутствовал пункт — искать выделенное слово в Яндекс. Возможно ли это?

Дмитрий, каждая программа имеет свое контекстное меню. На глобальном уровне вы этого в реестре в любом случае не реализуете.

Vadim Sterkin,

Спасибо. Я понимаю, что у каждой программы меню свое. Ну а вдруг…)

Как добавить пункт
в контекстное меню

Чтобы работа с компьютером была удобной, в операционной системе Windows у каждого файла, папки или любого другого объекта есть контекстное меню. Открывается оно кликом правой кнопкой мышки по этому объекту.

Читать еще:  Как удалить системную папку в windows 10

Контекстное меню можно настраивать, добавляя и удаляя из него определенные пункты.

Об удалении пунктов читайте здесь. Ниже речь пойдет только об их добавлении в меню.

Чтобы добавить пункт в контекстное меню, необходимо внести изменения в системный реестр 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 – Chrome, 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, в которую необходимо перейти.

Читать еще:  Как удалить папку thumbnails на андроид

На моем компьютере в значении этого параметра указано “jpegfile”. Значит, мне необходимо перейти в ветку HKEY_CLASSES_ROOT/jpegfile

3. Перейдя в указанную папку, необходимо найти в ней раздел с названием “shell”. Если такого раздела там нет, его необходимо создать. Этот раздел и есть веткой реестра, в которую необходимо добавлять соответствующие записи для создания пункта контекстного меню.

В моем примере, это ветка HKEY_CLASSES_ROOT/jpegfile/shell

4. Программы для добавления пунктов в контекстное меню

Новые пункты в контекстное меню можно добавлять при помощи программ. Вот названия некоторых из них:

RuCore.NET

Контекстное меню папок и файлов, дисков

Как сделать доступными команды контекстого меню «Открыть/Печать/Редактировать» для более 15 файлов

В Windows 7 команды «Открыть/Печать/Редактировать» не отображаются в контекстном меню, если оно вызывается сразу для 15 и более файлов. Такое поведение реализовано по умолчанию, так как использование этих команд сразу для большого количества файлов редко используется пользователями. Чтобы снять данное ограничение, откройте раздел HKCUSoftwareMicrosoftWindowsCurrentVersionExplorer и для параметра MultipleInvokePromptMinimum установите значение 16 (режим безлимитный). Также вы можете использовать значения от 1 до 15, чтобы установить собственные значения для скрытия указанных элементов меню. Например, при значении 3, уже к четырём одновременно выделенным файлам команды меню применяться не будут. Но не используйте значение ключа равным нулю — вы отключите команды вообще, в том числе и команду «Открыть».

Настройка контекстного меню рабочего стола Windows 7

Можно добавлять свои пункты в контекстное меню рабочего стола и получать быстрый доступ к настройкам системы и приложениям. Рассмотрим несколько вариантов.

Доступ к настройкам системы

Для добавления пунктов контекстного меню рабочего стола в разделе HKCRDirectoryBackgroundshell создайте новый раздел, название которого будет соответствовать названию пункта меню, например Свойства системы

Примечание. Здесь можно использовать два варианта: первый – это когда имя подраздела соответствует названию пункта контекстного меню. Второй – значение параметра “По умолчанию” в созданном подразделе должно соответствовать названию пункта контекстного меню.

В новом подразделе создайте подраздел с именем command и в его параметре по умолчанию пропишите команду, запускающую необходимую оснастку, например, для запуска свойств системы используйте control sysdm.cpl. В контекстном меню рабочего стола появится пункт Свойства системы.

Также можно назначить значок для нового пункта контекстного меню. В созданном выше разделе создайте строковый параметр Icon и пропишите в нем путь к значку, например, shell32.dll,15

Еще один параметр, который можно использовать для изменения вида нового пункта меню – это Position. Параметр, который создается в том же разделе, что и параметр Icon, позволит определить положение этого пункта меню. По умолчанию новый пункт меню расположен посередине, но его можно переместить в нижнюю часть контекстного меню или вверх. Значения параметра доступны только bottom и top — соответственно внизу и вверху меню; есть еще значение middle, но оно бесполезно так как отвечает расположению по умолчанию, то есть так же как и без параметра Position вовсе.

Лишние команды в меню

При установке многих программ контекстное меню файлов и папок постепенно заполняется лишними пунктами.

Чтобы оставить в меню только то, что действительно нужно, найдите ветвь HKCR*shellexContextMenuHandlers — в ней в качестве подразделов выступают команды, отображаемые в меню любого файла. Просто удалите ненужные команды.

Команды, привязанные к конкретному типу файлов можно найти уже в ветвях, соответствующих такому типу. Например, для файла AVI это будет раздел HKCRavifileshell

Соответственно, чтобы добавить новый пункт в контекстное меню, нужно прописать строку типа

Например, чтобы прописать пункт «Открыть с помощью…» в контекстном меню, найдем ключ HKCR*shellopenascommand Измените значение «По умолчанию» на «C:WINDOWSrundll32.exe shell32.dll,OpenAs_RunDLL %1» (путь к файлу подредактируйте при необходимости).

За меню папок отвечают разделы: HKCRDirectoryshell и HKCRFoldershell

За меню дисков отвечают HKCRDriveshell

Например, для быстрой очистки диска создайте в указанном месте новый раздел типа Очистка диска, в котором создать раздел command, в параметре «По умолчанию», которого прописать:
C:WINDOWScleanmgr.exe /d %1
Теперь нажав правой кнопкой мыши на каком-либо диске можно выбрать команду Очистка диска.

Есть также раздел, в котором задается контекстные меню для принтеров: HKCRPrintersshellexContextMenuHandlers

Команда Закрепить в меню Пуск для папки

В контекстном меню программы или ярлыка в операционной системы Windows XP и Vista есть команда Закрепить в меню Пуск. Можно добавить такую же команду и для папки — в разделе HKCRFoldershellexContextMenuHandlers создайте раздел с любым названием и введите для параметра по умолчанию значение . Теперь, если нажать на клавишу Shift и вызвать контекстное меню папки, то увидите в нем команду Закрепить в меню Пуск.

Редактирование меню Открыть с помощью (XP и Vista)

Если в контекстном меню Открыть с помощью… Проводника имеются лишние ярлыки неиспользуемых приложений, то можно отредактировать этот список. Сначала нужно определиться с расширением файлов, контекстное меню которых требуется изменить. Далее найдите ветку HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerFileExts , выберите в ней нужное расширение и внесите соответствующие изменения в содержимое подраздела OpenWithList.

Управление Windows Aero из контекстного меню Проводника

Можно добавить в контекстное меню Проводника команды быстрого отключения и включения интерфейса Aero. Для этого откройте ветку HKCRDirectoryBackgroundshell и создайте новый подраздел Включить Aero. Внутри созданного раздела Включить Aero создайте новый подраздел command и задайте строковому параметру значение Rundll32 dwmApi #102.

Повторяем шаги для второй команды. Снова в разделе shell (смотри выше) создаем новый подраздел Отключить Aero, затем подраздел command и в строковом параметре прописать команду Rundll32 dwmApi #104.

Вкладка Безопасность

Если у вас пропала вкладка Безопасность в свойствах папок, файлов и дисков, проверьте параметр типа DWORD NoSecurityTab в разделе HKCU SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer . Чтобы данная вкладка была видна, нужно установить значение 0, в противном случае установите значение 1.

Как изменить меню правой кнопки. Очистка Контекстного меню Windows

Контекстное меню (меню правой кнопки мыши)– удобный инструмент для ускорения работы в Windows. Сегодня мы раскроем несколько простых секретов работы с контекстным меню и системным реестром. Читайте, как без посторонних приложений настроить этот важный элемент под свои потребности, используя лишь встроенный редактор реестра regedit.

Чем удобно контекстное меню (меню правой кнопки) и зачем его очищать

Хочется сразу определиться с терминологией, чтобы в дальнейшем не возникало путаницы.

Контекстное меню Проводника или, как его иногда называют, меню действия – это набор команд, вызываемый при помощи щелчка правой (контекстной) кнопки мыши на любом файле или папке. В зависимости от объекта, для которого оно вызывается, меню будет иметь разный вид или «контекст».

Примечание. Конечно, меню действий есть не только у Проводника Windows, а и у большинства установленных приложений, ведь это удобнейший способ доступа к самым важным командам.

Сразу после установки операционной системы, контекстное меню имеет стандартный и опрятный вид, но по мере установки дополнительного софта, в него постоянно добавляются новые пункты. В конце концов, их становится настолько много, что использование этого полезного инструмента превращается в муку. Поэтому критически важно уметь поддерживать в порядке содержимое контекстного меню Windows для быстрой и комфортной работы.

Это можно делать двумя способами:

  • В полуавтоматическом режиме, используя стороннее программное обеспечение.
  • Вручную, при помощи редактора реестра Windows.

Возможно, первый способ может быть немного легче, но вторым способом нет необходимости использовать различные сомнительные программы скачанные с интернета, все делается стандартными средствами.

Тем более, использование реестра позволит глубже вникнуть во внутренние процессы системы и узнать много нового, так что мы расскажем именно о втором варианте действий.

Как отредактировать контекстное меню Проводника через реестр

Запускаем редактор реестра:

  1. Входим в меню П уск.
  2. Вводим в строку поиска команду regedit и жмем Enter .

Важно! Любые неосторожные и необдуманные операции могут иметь опасные последствия, вплоть до полного отказа загрузки Windows. Чтобы подстраховать себя от ошибок, обязательно сделайте резервную копию реестра перед началом его редактирования!

Порядок действий при создании резервного файла реестра:

  1. Заходим в меню «Файл» в отрытом редакторе.
  2. Выбираем пункт «Экспорт».
  3. В открывшемся окне, в нижнем поле «Диапазон экспорта», выбираем «Весь реестр».
  4. Указываем нужное место расположения и имя нового файла и жмем «Сохранить».

Примечание. В случае возникновения проблем после ручного редактирования, реестр можно будет восстановить до его первоначального состояние из резервной копии, используя пункт «Импорт» в меню «Файл» редактора regedit.

Как видим, сам реестр имеет оригинальную древовидную структуру. В левой части редактора отображается само дерево, а в правой – список параметров в выбранной ветке. Для работы с контекстным меню нас интересует один-единственный раздел: «HKEY_CLASSES_ROOT».

Как уже упоминалось, разным объектам (папкам, файлам) соответствуют разные наборы команд, поэтому редактировать в реестре их придется по отдельности. Наши основные цели: очистка контекстного меню папок и общих пунктов меню для всех типов файлов.

Важно! Стандартные системные пункты контекстного меню через реестр изменять не будем. Редактируются только элементы, добавленные установленными приложениями.

Очистка контекстного меню папок

Все настройки контекстного меню директорий хранятся в ветках:

… Directory Shellex ContextMenuHandlers .

… Folder Shell e x ContextMenuHandlers .

Если присмотреться, то среди разветвлений указанных веток легко увидеть знакомые команды. Так, ответвление реестра « Directory Shell » содержит в себе пункты верхней части меню, а « Directory Shellex ContextMenuHandlers » – нижней. « Folder ShellEx ContextMenuHandlers », в основном, повторяет содержание предыдущей ветки, так что одинаковые пункты при необходимости удаляйте из обеих веток.

Осталось только удалить лишние команды. Выбор, что убрать, а что оставить в списке – это уже личное дело каждого. Тем более, что в зависимости от списка установленных приложений, содержание меню будет существенно отличаться. Нажмите правой кнопкой мышки на не нужную запись в реестре и выберите «Удалить». Затем повторите эту операцию для остальных выбранных элементов.

Вот такой аккуратный вид имеют рассматриваемые ветки реестра и само меню после завершения процедуры очистки.

Очистка контекстного меню файлов

Сама процедура ничем не отличается от той, которая проводилась в предыдущем разделе. Изменились только ответвления ветки реестра «HKEY_CLASSES_ROOT», хранящие необходимые параметры.

В них хранятся общие элементы для всех зарегистрированных в системе типов файлов.

По примеру очистки для папок, удаляем все ненужные ветки в реестре и получаем красивое и удобное контекстное меню.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Статьи c упоминанием слов: