Статьи Настройка Windows Добавление полезных пунктов в контекстное меню Windows 7
Воскресенье, 25 Декабря 2011 в 23:43

Добавление полезных пунктов в контекстное меню Windows 7

Контекстное меню Windows

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

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

- Для начала, создаем обычный текстовый документ (.txt) с произвольным названием и открываем его.

- В первую строчку обязательно копируем следующий текст: "Windows Registry Editor Version 5.00" (без кавычек). Эта строка дает понять операционной системе, что данный файл предназначен для добавления выделенных строк через редактор реестра Windows. Если в вашем .reg файле не будет на первом месте этой строки – данные не будут добавлены в реестр и вы получите сообщение об ошибке.

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

- В главном меню выбираем "Файл" – "Сохранить как". Находим место для сохранения и заполняем поля:

  • Имя файла: Любое название, в конце дописываем расширение ".reg" (без кавычек)
  • Тип файла: "Все файлы"
  • Кодировка: Оставляем ту, что выбрана по умолчанию

Шаблон сохранения reg - файла

- В конце запускаем сохраненный файл и отвечаем "Да" на все вопросы и предупреждения системы.

Список некоторых полезных компонентов и коды для их добавления в контекстное меню:

Компонент "Панель управления" (Control Panel)

[HKEY_CLASSES_ROOT\Directory\Background\Shell\ContrPanel]
"MUIVerb"="Панель управления"
"Icon"="imageres.dll,22"
"Position"="Bottom"

[HKEY_CLASSES_ROOT\Directory\Background\Shell\ContrPanel\command]
@="control.exe"

Компонент "Удаление программ"

[HKEY_CLASSES_ROOT\Directory\Background\shell\DeleteProgs]
"Icon"="shell32.dll,10"
"MUIVerb"="Удаление программ"

[HKEY_CLASSES_ROOT\Directory\Background\shell\DeleteProgs\command]
@="control appwiz.cpl"

Компонент "Диспетчер устройств" (Device Manager)

[HKEY_CLASSES_ROOT\Directory\Background\shell\DeviceManager]
"Icon"="imageres.dll,29"
"MUIVerb"="Диспетчер устройств"
"Position"="Bottom"

[HKEY_CLASSES_ROOT\Directory\Background\shell\DeviceManager\command]
@="control hdwwiz.cpl"

Пункт "Выполнить" (Run)

[HKEY_CLASSES_ROOT\Directory\Background\shell\Run]
"Icon"="%SystemRoot%\System32\imageres.dll,-100"
"MUIVerb"="Выполнить"

[HKEY_CLASSES_ROOT\Directory\Background\shell\Run\command]
@="%SystemRoot%\system32\rundll32.exe shell32.dll,#61"

Команда "Очистить корзину"

[HKEY_CLASSES_ROOT\Directory\Background\shell\Recycle Bin]
"CommandStateHandler"="{c9298eef-69dd-4cdd-b153-bdbc38486781}"
"Description"="@shell32.dll,-31332"
"Icon"="shell32.dll,-254"
"MUIVerb"="@shell32.dll,-10564"
"Position"="Bottom"

[HKEY_CLASSES_ROOT\Directory\Background\shell\Recycle Bin\command]
"DelegateExecute"="{48527bb3-e8de-450b-8910-8c4099cb8624}"

Компонент "Поиск" (Search)

[HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\Search]
@="{2559a1f0-21d7-11d4-bdaf-00c04f60b9f0}"

Функция "Копировать в папку" (Copy to folder)

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\{C2FBB630-2971-11D1-A18C-00C04FD75D13}]
@=""

Функция "Переместить в папку" (Move to folder)

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\{C2FBB631-2971-11D1-A18C-00C04FD75D13}]
@=""

Некоторые пункты меню будут работать только в последних версиях операционных систем Windows.

Если кто-то столкнулся с трудностями при создании файла – Вы можете  скачать архив 2.70 Кб с отдельными файлами под каждый описанный пункт меню.


Немного расшифрую код (на случай, если Вы заходите внести в него какие-то изменения) на примере, допустим, Диспетчера устройств:

  • HKEY_CLASSES_ROOT\Directory\Background\shell\ - Тип контекстного меню и путь к нему в реестре
  • DeviceManager- Название создаваемой ветки реестра
  • "Icon"="imageres.dll,29"- Путь к системной библиотеке с иконками и номер картинки в ней
  • "MUIVerb"="Диспетчер устройств" - Название пункта меню
  • "Position"="Bottom" - Местоположение пункта в меню
  • HKEY_CLASSES_ROOT\...\shell\DeviceManager\command - Путь новой исполняемой подветки реестра
  • @="control hdwwiz.cpl" - путь и название исполняемого файла

По поводу последнего пункта: В данном случае операционная система ищет файл в системной папке, поскольку нету пути к нему. Можно было бы прописать более полную строчку, включающую путь к файлу. Тогда строка выглядела бы следующим образом:
@="%SystemRoot%\system32\control hdwwiz.cpl "


В качестве закрепления, давайте усложним задачу и создадим пункт контекстного меню к любому другому приложению, например браузеру, установленному в НЕ системной папке и заставим его открыть сайт "rapidsoft.org". Вот код, который у меня получился:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\OperaRapidsoft]
"MUIVerb"="Rapidsoft.org"
"Icon"="D:\\P Program Files\\Opera\\opera.dll,1"
"Position"="Bottom"

[HKEY_CLASSES_ROOT\Directory\Background\shell\OperaRapidsoft\command]
@="D:\\P Program Files\\Opera\\opera.exe http://rapidsoft.org"

Скриншот с результатом:

Добавление браузера в контекстное меню

Спасибо за уделенное внимание.

Список кодов для разных полезных функций со временем будет увеличиваться
Последнее изменение: Понедельник, 26 Декабря 2011 в 00:56

3 комментарии

  • Арсений Воскресенье, 15 Апреля 2012 в 23:14 Написал: Арсений

    Два дня провёл у компьютера в поиске решения своей проблемы. Наконец-то, кажется нашёл. Проблема в том, что у меня из контекстного меню "создать" исчез пункт "текстовый файл". Исчез после установки и последующего удаления программы STDUviewer. А вновь установленный Adobe Reader перестал читать(открывать) файлы txt. ХОТЕЛОСЬ бы получить подробную инструкцию по устранению этой проблемы. Заранее - большое спасибо.

  • Trend Воскресенье, 15 Апреля 2012 в 23:53 Написал: Trend

    Сам блокнот находится здесь: C:\Windows\System32\notepad[точка]exe (Восстановить ассоциацию файлов, надеюсь, не будет проблемой)
    Работаем в редакторе реестра: Win+R -> regedit
    Ветка реестра: HKEY_CLASSES_ROOT\.txt
    Создаем подраздел: ShellNew
    Параметр: ItemName
    Значение: @%SystemRoot%\system32\notepad[точка]exe,-470
    _____
    Или просто создаем reg-файл следующего содержания:

    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\.txt\ShellNew]
    "ItemName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,\
    6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,\
    00,6e,00,6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,00,2c,00,\
    2d,00,34,00,37,00,30,00,00,00
    "NullFile"=""

  • NeskO Четверг, 14 Марта 2013 в 13:30 Написал: NeskO

    Ребят, я тут решил добавить Диспетчер задач к контекстное меню, но не знаю какой код писать. не подскажите? =)

Авторизуйтесь, чтобы получить возможность оставлять комментарии

Обновления приложений