答案1
文件夹背景上下文菜单由HKEY_CLASSES_ROOT\Directory\background\shell
注册表项控制。例如,“使用 Visual Studio 打开”条目由AnyCode
子项控制。
命令提示符和 PowerShell
Windows 10 已经有 和 的条目cmd.exe
,powershell.exe
但它们默认是隐藏的。您可以通过按住Shift键并右键单击文件夹窗口的背景来显示 PowerShell 条目。使用 值安装 PowerShell 时,命令提示符将被隐藏HideBasedOnVelocityId
。
要始终在文件夹背景上下文菜单中显示命令提示符和 PowerShell,而无需按住Shift:
- 授予自己修改
shell
密钥的权限。- 右键单击注册表编辑器中的键。
- 选择“权限”>“高级”。
- 将所有者更改为
Administrators
,然后选中“替换子容器和对象的所有者”和“用从该对象继承的权限条目替换所有子对象权限条目”。 - 单击“确定”关闭“权限”对话框。
- 在和
cmd
子PowerShell
项中,删除或重命名Extended
、HideBasedOnVelocityId
和ShowBasedOnVelocityId
值。
现在,当您右键单击文件夹的背景时,您应该在上下文菜单中看到“在此处打开命令窗口”和“在此处打开 PowerShell 窗口”。
新条目
要向文件夹背景上下文菜单添加新条目,您可以在HKEY_CLASSES_ROOT\Directory\background\shell
注册表项中创建新项。
- 新密钥的名称可以是任何您想要的唯一名称,它不会出现在 UI 中。
(Default)
上下文菜单项的文本标签由键中的值控制。- 条目的可选图标由子键中的字符串值控制
Icon
。它可以是 ICO 文件的文件名,也可以是 PE 文件 (DLL/EXE),带有可选的数字 ID(以逗号分隔)。对于 PE 文件中图标的从 0 开始的索引,索引可以是非负数,对于资源 ID,索引可以是负数。 (Default)
单击该条目时要运行的程序和参数由子键的值控制command
。它使用%V
占位符变量来表示当前目录。
MinGW Bash 示例
我已将 MinGW Bash 作为 Git for Windows 的一部分进行安装。这是一个.reg
将其添加到我的文件夹背景上下文菜单的文件。您的安装目录可能会有所不同。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\bash]
@="Open in Bash"
"Icon"="C:\\Programs\\Development\\Git\\mingw64\\share\\git\\git-for-windows.ico"
[HKEY_CLASSES_ROOT\Directory\Background\shell\bash\command]
@="\"C:\\Programs\\Development\\Git\\bin\\bash.exe\""
这将在给定的文件夹中打开 Bash,即使命令没有使用%V
,因为 Windows 默认以该文件夹作为新进程的工作目录来启动该进程(除非NoWorkingDirectory
键中存在值)。
我不再安装 Cygwin,但很可能可以以类似的方式添加其 Bash 的菜单项。
Windows 11 有一个“在终端中打开”条目始终在等效菜单中可见,尽管自定义起来更具挑战性。