Добавить запись в контекстное меню для определенного типа файла
Что я хочу
Я хочу добавить пользовательскую запись в меню, которое появляется при щелчке правой кнопкой мыши на.jpg/.jpeg для моей программы (редактирование изображений).
Что я пробовал
Я добавил в HKEY_CLASSES_ROOT\jpegfile\shell ключ test
там второй ключ command
и установите для него значение (по умолчанию) notepad.exe (только для тестирования). Потому что нет test
запись появилась в меню, я сделал то же самое, только под директорией HKEY_CLASSES_ROOT \, где она работала!
Файл, по которому я щелкаю, представляет собой JPEG, и значением по умолчанию HKEY_CLASSES_ROOT.jpg является jpegfile
,
(Также проверено с txtfile
но безуспешно.)
Что я сделал не так, чтобы добавить пользовательскую команду только для определенных типов файлов?
1 ответ
То, что вы сделали, было правильно. Возможные причины, по которым это не сработало:
Центр обновления Windows имеет раздражающую тенденцию в Windows 10 постоянно сбрасывать ассоциации файлов по умолчанию в Windows.
Вы добавили эту возможность в ключ jpegfile, но тип.jpg может быть связан с ключом другого типа.
Перейдите к HKEY_CLASSES_ROOT.jpg и посмотрите, что это за ассоциация (или введите ASSOC .jpg
в командной строке). Если это не jpegfile, проверьте, что это такое, если вы действительно хотите сохранить эту связь.
Чтобы дать вам пример, у меня есть работающий пункт меню правой кнопкой мыши для файлов.png, который запускает для них утилиту pngout. Я сделал это, отредактировав реестр. Моя текущая ассоциация для файлов.png - FastStone Image Viewer:
Поэтому я изменил меню оболочки для ключа типа файла FastStone:
И теперь мой пункт меню правой кнопкой мыши работает.