Контекстное меню Windows для всех файлов, кроме файла ярлыка

Контекстное меню Windows для всех файлов, кроме файла ярлыка

Я следовал этому руководству @http://www.howtogeek.com/107965/how-to-add-any-application-shortcut-to-windows-explorers-context-menu/для создания контекстного меню в моем реестре.

Могу ли я узнать, возможно ли включить меню для всех типов файлов, КРОМЕ ярлыков (с расширением lnk)?

В настоящее время я использую метод «Все типы файлов» (HKEY_CLASSES_ROOT*\shell), но он также отображается и для ярлыков (файл .lnk).

Пожалуйста, порекомендуйте.

решение1

Одним из возможных решений может быть перезапись меню для lnk-файлов путем создания записи с тем же именем ключа на HKEY_CLASSES_ROOT\lnkfile\shell. Например, если меню Все типы файлов

[HKEY_CLASSES_ROOT\*\shell\DateTimeTool]
@="DateTime Tool"

то новое значение будет

[HKEY_CLASSES_ROOT\lnkfile\shell\DateTimeTool]
@="DateTime Tool (for shortcut)"

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

решение2

Программа, которую вы настроили, открывает цели этих .lnk-ярлыков, а не сами .lnk-файлы, верно? Если так, то так и должно быть. При открытии ярлыка следует ожидать, что он будет обработан так, как если бы это был сам целевой файл.

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

У меня уже много лет есть этот же хак реестра, настроенный с помощью текстового редактора. Здорово иметь некоторую последовательность "открыть с помощью".

Кстати, вы можете присвоить ему значок: внутри ключа «Открыть с помощью» создайте новую строку с именем «Иконка» и укажите в ней путь к вашей программе или значку.

Связанный контент