Домашний компьютер|17 Октябрь 2011 2:10

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

Добавив в контекстное меню рабочего стола какой-нибудь часто использующийся инструмент, программу или функцию, можно значительно упростить навигацию по системе. Однако по мере прибавления новых пунктов, меню становится на порядок больше, а значит и пользоваться им не так удобно. Эта проблема решается путем создания в контекстном меню еще одного, раскрывающееся меню, которое может содержать все что угодно — от приложений до административных инструментов.

Сначала необходимо создать в реестре собственные команды, которые будут выполняться системой при нажатии на пункт меню. Открываем редактор реестра (по-прежнему, Пуск > Поиск/Выполнить > regedit > OK), идем по пути HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\Shell. В последнем разделе нужно создать подразделы для каждой отдельной программы или функции, которая будет присутствовать в контекстном меню. Названия подразделов должны обязательно быть написаны латинскими буквами и только так, как прописаны в системе. К примеру, при добавлении в меню редактора реестра и менеджера процессов, подразделы будут называться regedit и taskmgr.

реестр

В каждом созданном пункте необходимо дважды щелкнуть параметр, находящийся в центральном окне и отображаемый как «по умолчанию«, а в строке «значение» нужно задать имя ярлыка, которое будет отображаться в меню — Редактор реестра и Менеджер задач.

Теперь нужно назначить команду для пунктов меню. В каждом из созданных разделов необходимо создать еще по одному разделу и назвать их command. Дважды щелкнуть по параметру и в качестве значения указать путь к программе. Для редактора реестра — это regedit.exe, для менеджера задач — taskmgr.exe. Важно помнить, что если исполняемый файл программы находится в системной папке, прописывать полный путь к нему нет необходимости.

реестр
Следующим шагом станет добавление пунктов меню, которые будут служить для выполнения команд. Переходим в раздел HKEY_CLASSES_ROOT\DesktopBackground\Shell, правой кнопкой мыши жмем на пункте shell, выбираем Создать > Раздел. Называем его латинскими буквами, например, Menu1, и в этом разделе нужно создать несколько параметров: MUIVerb, SubCommands и Position. Параметру MUIVerb присваиваем значение, например, Система (здесь можно писать по-русски). В параметре SubCommands необходимо указать список команд, выполняющихся из будущего меню. Все указатели нужно набирать через точку с запятой, в данном случае будет указано следующее: regedit; taskmgr. Параметр Position указывать не обязательно — он отвечает за расположение меню в списке (вверху — Top; внизу — Bottom), если его не указывать, меню будет находиться в середине списка.

реестр

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