windows shell中右键上下文菜单的操作

Ale*_*lex 4 registry windows-shell

我一直在尝试使用注册表在窗口内操作我的右键单击。我设法在外壳内添加了单行。

[HKEY_CLASSES_ROOT\Directory\shell\Notepad
[HKEY_CLASSES_ROOT\Directory\shell\notepad\Command]    
@="\"notepad.exe" \"%1\""
Run Code Online (Sandbox Code Playgroud)

例如会启动记事本。

现在,我真正想要的是上下文菜单中的子目录。

任何人都知道我可以在哪里阅读此内容,或者知道如何实际操作?

gal*_*ben 5

要添加子菜单,您首先需要添加菜单名称,例如:

[HKEY_CLASSES_ROOT\Directory\shell\Notepad]
"SubCommands"="command1;command2;"
"MUIVerb"="Notepads"
"Position"="-"
Run Code Online (Sandbox Code Playgroud)

子命令是诀窍。每个命令实际上是对另一个注册表项的引用。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\command1]
@="command1"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\command1\command]
@="C:\\Windows\\System32\\cmd.exe"





[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\command2]
    @="command2"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\command2\command]
    @="C:\\Windows\\System32\\cmd.exe \K cd %1"
Run Code Online (Sandbox Code Playgroud)

单击目录时,这将为您提供一个子上下文菜单。您可以在命令中使用 %1 来获取用户单击的项目的名称。这适用于目录。对于文件应该可以正常工作。