在资源管理器扩展中创建子菜单?

6

我创建了一个小脚本,可以更改文件名(将空格替换为_等)。我使用参数控制这个脚本。

现在我想将它包含到我的资源管理器扩展中,所以我尝试添加以下注册表项:

HKEY_CLASSES_ROOT\*\shell\edit filname method a\command
HKEY_CLASSES_ROOT\*\shell\edit filname method b\command
HKEY_CLASSES_ROOT\*\shell\edit filname method c\command

等等。

它正常工作,但我想将所有这些方法打包到子菜单中。有点像“打开方式”选项。这可能吗?


6
创建静态级联菜单本文介绍如何在 Windows 操作系统中创建静态级联菜单。静态级联菜单允许用户通过多个层次的下拉子菜单选择命令或选项。要创建静态级联菜单,需要使用 Win32 API 函数和数据结构。本文提供了完整的示例代码和说明,帮助你理解如何实现静态级联菜单。注意:本文只提供了英文版链接。如果需要中文版内容,请使用翻译软件进行翻译。 - Raymond Chen
1个回答

3
您可以编辑此内容以满足您的需求。
Windows Registry Editor Version 5.00

;           TOOLS MENU

            [HKEY_CLASSES_ROOT\*\shell\contexttools_anchor]
                "MUIVerb"="SendTo Tools"
                "Icon"="...YOUR PATH...\\files\\Tools.ico"
            "ExtendedSubCommandsKey"="*\\ContextMenus\\contexttools"
                ; "Extended"=""
; __________________________________________________________________________ >

    [HKEY_CLASSES_ROOT\*\ContextMenus\contexttools\Shell\001cmd]
        "MUIVerb"="Notepad 2"
        "Icon"="...YOUR PATH...\\Tools\\app1.exe"

            [HKEY_CLASSES_ROOT\*\ContextMenus\contexttools\Shell\001cmd\command]
                @="...YOUR PATH...\\Tools\\app1.exe \"%1\""
; __________________________________________________________________________ >
[HKEY_CLASSES_ROOT\*\ContextMenus\contexttools\Shell\005seperator]
"CommandFlags"=dword:00000008
; __________________________________________________________________________ >

    [HKEY_CLASSES_ROOT\*\ContextMenus\contexttools\Shell\006cmd]
        "MUIVerb"="Hash Compare"
        "Icon"="...YOUR PATH...\\Tools\\app2.exe"

            [HKEY_CLASSES_ROOT\*\ContextMenus\contexttools\Shell\006cmd\command]
                @="...YOUR PATH...\\Tools\\app2.exe \"%1\""
; __________________________________________________________________________ >

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接