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

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

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

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

2 ответа2

0

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

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

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

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

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

0

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

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

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

Кстати, вы можете дать ему иконку: внутри вашей клавиши "открыть с помощью" создайте новую строку с именем "Icon" и установите для нее программу или путь к иконке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .