Сделать контекстное меню подменю для пользователя в Windows Explorer - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь выполнить этот ответ , чтобы создать подменю с некоторыми пользовательскими командами в Windows Explorer, но нужно сделать все внутри HKEY_CURRENT_USER. Хотя я могу создать подменю в этом контакте, я не могу найти способ создания подкоманд таким образом.

В ответе говорится, что они должны быть в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell', so I tried what I thought would be the user equivalent HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ CommandStore \ shell`, но, похоже, это не имеет никакого эффекта.

Есть ли способ создать эти подкоманды, чтобы Explorer нашел их в контексте HKEY_CURRENT_USER?

1 Ответ

0 голосов
/ 17 января 2020

Я нашел решение, которое работает без необходимости добавлять записи в области реестра, недоступные для записи:

[HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\testmenu]
    "MUIVerb"="Nice Name"
    "subcommands"=""
    "Icon"="c:\\path\\to\\icon.ico"

Обратите внимание на запись subcommands с пустым строковым значением, это кажется важным.

Чтобы любые подкоманды появлялись в меню, добавьте следующее:

[HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\testmenu\Shell\subcommandname]
    @="Nice Name of Subcommand"
    "Icon"="c:\\path\\to\\another_icon.ico"

[HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\testmenu\Shell\subcommandname\command]
    @="c:\path\to\command.exe"

Это поместит подменю для каталогов в левой панели в Explorer, для основного окна используйте базовый путь HKEY_CURRENT_USER\Software\Classes\Directory\shell и для файлов используйте HKEY_CURRENT_USER\Software\Classes\*\shell

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...