如何在 Windows 中创建上下文菜单子菜单?

Cav*_*rob 5 windows contextmenu

我一直在编写实用程序并通过 Shell 键 * 上的 Regedit 将它们映射到上下文菜单,但我不知道如何像一些更流行的实用程序那样创建子菜单。

例如,如果我有三个脚本将文件移动和重命名到三个不同的文件夹,那么现在我有三个不同的上下文菜单条目。我更喜欢有一个名为“移动并重命名...”的扩展至这三个。

211*_*4L3 6

您可以通过注册表创建上下文菜单的子菜单,WIN 7 如下所示

建议先备份您的注册表!

此示例将带有单个命令的子菜单放入任何文件(不是文件夹或桌面)的右键单击上下文中。

菜单:

[HKEY_CLASSES_ROOT\*\shell\Custom Menu]
"MUIVerb"="Custom Tools"
"SubCommands"="Custom.copytoclip"
Run Code Online (Sandbox Code Playgroud)

命令:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Custom.copytoclip]
@="copytoclip description here"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Custom.copytoclip\command]
@="cmd /c clip < %1"
Run Code Online (Sandbox Code Playgroud)

请小心编辑您的注册表,其他版本的 Windows 可能会有所不同。


Moo*_*ice -1

您尚未指定您使用的语言。不管怎样,你需要做的就是编写一个 Shell 扩展。这里有一个向导。

正如 David 所指出的,在 C# 中不可能做到这一点。这篇博客文章对此进行了解释。