Как добавить пункт «Закрепить в меню Пуск» в контекстное меню папки

Дабы нарушить неловкую паузу, в очередной раз наступившую в блоге, предлагаю тебе, читатель, очередной нехитрый, но весьма полезный твик. Сегодня я поделюсь информацией, как добавить в контекстное меню папки пункт Закрепить в меню Пуск в Проводнике операционной системы Windows 7. Наряду с избранным и библиотеками, это - ещё один способ быстро и удобно перейти в папку, с которой чаще всего имеешь дело.

Проводник Windows 8 предоставляет схожую возможность. Меню "Пуск" там нет, но вместо него появился Начальный экран, куда и предлагается прикреплять папки для быстрого доступа к ним:

Windows 7 имеет схожие механизмы "под капотом", просто они не активны. Давайте их задействуем.

Порядок действий по шагам

  1. Откройте редактор реестра (regiedit.exe), и перейдите в ветку(советую сэкономить полминуты и применить вот этот скрипт):
    [code]HKEY_CLASSES_ROOT\Folder\ShellEx\ContextMenuHandlers[/code]
  2. Создайте здесь новый подраздел с именем {a2a9545d-a0c2-42b4-9708-a0b2badd77c8}. У вас получится вот так:
  3. На этом всё. Вам не потребуется перезагружать компьютер или перезапускать Проводник. Твик начинает действовать сразу же. Пункт меню "Закрепить в меню Пуск" становится видимым только при нажатой клавише Shift. Удерживая её, щелкните правой кнопкой мыши по любой папке. Результат:

Предваряя возможные вопросы , публикую небольшой FAQ

В. Можно сделать так, чтобы этот пункт всегда был виден, а не только при нажатой клавише Shift
О. Нет. Эту команду реализует Active-X объект, реализуемый библиотекой SHELL32.DLL, поведение которого жестко "прошито" в коде, и изменить его не получится.

В. А что вот это значит: {a2a9545d-a0c2-42b4-9708-a0b2badd77c8} ?
О. Это идентификатор(CLSID) того самого ActiveX, который реализует пункт контекстное меню. Вы можете увидеть его описание в ветке реестра
[code]HKEY_CLASSES_ROOT\CLSID\{a2a9545d-a0c2-42b4-9708-a0b2badd77c8}[/code]

В. А можно сделать этот пункт доступным не только для папок, но и для других типов объектов файловой системы?
О. Увы, нет. Он доступен лишь для исполняемых файлов. Как я уже писал выше, повлиять на его поведение невозможно. В качестве слабого утешения могу лишь рекомендовать Taskbar Pinner для Windows 7 и Windows 8 или Start Screen Pinner для Windows 8.

Для тех, кому лень возиться с реестром:

Готовые файлы реестра

Остались вопросы или появились предложения? Комментарии к вашим услугам!

9 ответов к “Как добавить пункт «Закрепить в меню Пуск» в контекстное меню папки”

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

  2. Спасибо очень помогло.
    P.S. У Вас опечатка regiedit, вместо regedit

  3. Занятный материальчик, спасибо Сергей )

  4. Отлично папки добавляются. Но добавить её можно и простым перетаскиванием , а Как заставить их «отображать как меню» при наведении мышки? — Имеется ввиду раскрывающийся список. Возможно это?. Допустим в папке ярлыки и не хочется по ней кликать чтоб она раскрывалась в отдельном окне.

    1. Не-а. То, о чем вы говорите, называется Jump List, и оно реализовывается на уровне закрепленной программы, исполняемого файла. В данном же случае мы имеем дело с ярлыком на папку, с ним такой фокус не получится сделать.

      1. Такая возможность была доступна в ХР без особых сложностей. Становится грустно от понимания того что более новая операционная система лишает возможности использовать привычные функции, предлагая взамен весьма сомнительные удобства — раскрывать в виде меню — папки музыка, мои документы и мои рисунки изначально хранящиеся на диске С и потенциально более подверженные утрате в случае сбоя.
        Таким образом если имеется принципиальная необходимость добавить своё меню в меню пуск , про какому пути стоит пойти с наименьшим сопротивлением ? писать программу по типу M.Agent и Skype- c Легкостью добавляющие свои «подменю»
        Поправьте меня если я не прав: в основе такой программы так или иначе чисто физически должна быть папка с ярлыками с присвоенным ей идентификатором класса объекта (CLSID) в фигурных скобках — Объект идентифицируется как специальная папка по типу «панель управления» по типу -http://www.cqham.ru/file.htm#75047146 — Изложенный тут метод работает в XP. Вчера я насиловал реестр хотел использовать под свои цели папку игры — но недостаточно знаний… Возможно ли что то подобное реализовать в win7 при помощи твиков? Если нет то к какому софту по написанию программы стоит обратиться человеку не умеющему программировать. Извиняюсь если отвлекаю от работы просто обидно и интерес чисто спортивный. Хотя потенциал донное решение будет иметь неплохой — известно что в win8 с этим тоже проблема. Спасибо.

Обсуждение закрыто.

css.php