Я работаю с меню проводника с '95 года, чтобы включить расширения оболочки для разработки в 'c/c++'. Я говорю это, потому что яполагатьчто я уже понимаю, как работают ключи ассоциации файлов.
Моя проблема в том, что я не хочу, чтобы Edit
при щелчке правой кнопкой мыши по txt-файлам отображалась какая-либо клавиша, и я не вижу НИКАКОЙ клавиши (Изменитьпоявляетсябыть каноническим глаголом). Возможно, есть новое место в реестре, которое можно использовать для записи пользователя, чтобы исправить это? Кстати, я могу удалить Open
и Print
все будет хорошо.. только неРЕДАКТИРОВАТЬпотому что его там нет!
Я создал подменю, чтобы хранить множество редакторов, и дополнительная кнопка «Редактировать» просто раздражает.
Чтобы избавить всех от лишних хлопот... пара картинок стоят пары тысяч слов.
Я предполагаю, что эта функциональность по какой-то причине жестко закодирована в проводнике. Надеюсь, что я ошибаюсь.
Также... Я знаю, что могу написать расширение оболочки для редактирования меню во время выполнения, но не для этого... Я просто проигнорирую его.
Помоги мне Оби Ван Исследователь Гуру Кеноби. Ты моя единственная надежда.
решение1
Вы можете использоватьМенеджер типов файлов NirSoftчтобы увидеть, какие пункты меню связаны с данным расширением, и редактировать их напрямую. FileTypesMan объединяет соответствующие ключи реестра и, таким образом, экономит вам длительный поиск в реестре.
Для файлов txt места расположения пунктов меню в проводнике могут быть следующими:
HKEY_CLASSES_ROOT\.txt (file type)
HKEY_CLASSES_ROOT\txtfile (perceived type)
HKEY_CLASSES_ROOT\SystemFileAssociations\.txt (default file type)
HKEY_CLASSES_ROOT\SystemFileAssociations\text (default perceived type)
Пункт меню «Редактировать»
Таинственную команду «редактировать» можно найти здесь:
Computer\HKEY_CLASSES_ROOT\SystemFileAssociations\text\shell\edit
Ключ SystemFileAssociations
Подключи, зарегистрированные в HKEY_CLASSES_ROOT\SystemFileAssociations, позволяют Shell определять поведение атрибутов по умолчанию для типов файлов и включать ассоциации общих файлов. Когда пользователи изменяют приложение по умолчанию для типа файла, ProgID нового приложения по умолчанию имеет приоритет в предоставлении глаголов и другой информации об ассоциации. Этот приоритет обусловлен тем, что он является первой записью в массиве ассоциаций. Если программа по умолчанию изменена, информация под предыдущим ProgID больше недоступна.
Источник:https://docs.microsoft.com/en-us/windows/win32/shell/app-registration
Ключ HKEY_CLASSES_ROOT
Обратите внимание, что в зависимости от ситуации изменения в HKEY_CLASSES_ROOT будут применяться к одному из следующих ключей:
HKEY_CURRENT_USER\Software\Classes
HKEY_LOCAL_MACHINE\Software\Classes
Чтобы изменить настройки по умолчанию, сохраните изменения в разделе HKEY_LOCAL_MACHINE\Software\Classes. Если вы записываете ключи в раздел HKEY_CLASSES_ROOT, система сохранит информацию в разделе HKEY_LOCAL_MACHINE\Software\Classes. Если вы записываете значения в раздел HKEY_CLASSES_ROOT, а раздел уже существует в разделе HKEY_CURRENT_USER\Software\Classes, система сохранит информацию там, а не в разделе HKEY_LOCAL_MACHINE\Software\Classes.
Источник:https://docs.microsoft.com/en-us/windows/win32/sysinfo/hkey-classes-root-key