Я хочу добавить элемент контекстного меню, например WinRAR, в контекстное меню правой кнопки мыши для файлов или папок, изменив разделы реестра.
На картинке,
Добавить в "Screen Captures.rar"
WinRAR получает это имя "Screen Captures" из имени файла. Я думаю, что у WinRAR есть DLL, которая содержит код, который получает это имя файла и динамически добавляет его в контекстное меню.
Но в моем случае у меня нет DLL, поэтому мне придется сделать это вручную. Есть ли какой-либо код или аргумент (например, %1 %V и т. д.), который я могу использовать в ключах реестра?
Мой пункт контекстного меню будет выглядеть так:
Отправить "FILE_OR_FOLDER_NAME_HERE" на рабочий стол
решение1
Динамический пункт контекстного меню, подобный пункту WinRARсоздаетневозможно обойтись без дополнительного кода.
Вы можете установить(По умолчанию)значение для HKEY_CLASSES_ROOT\<ProgID>\shell\mymenu
статической строки следующим образом:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\txtfile\shell\mymenu]
@="My Menu Entry"
[HKEY_CLASSES_ROOT\txtfile\shell\mymenu\command]
@="%SystemRoot%\\system32\\NOTEPAD.EXE %1"
Появится следующее:
Если вы попытаетесь использовать %1 илидругие переменныеэто просто не сработает, так как будет рассматриваться как буквальная строка и, следовательно,%1сам отобразится в меню.