【发布时间】:2023-03-27 15:59:01
【问题描述】:
我一直在寻找这几天,但没有找到任何东西。 我正在尝试找出如何将上下文菜单项添加到 Windows 资源管理器。我不希望它用于特定的文件类型,但我希望它出现在特定路径内的所有内容上。 例如,我希望“C:\folder”内任何内容的右键菜单包含此项目,但它不应出现在此文件夹之外...
这可能吗? 任何帮助将不胜感激!
提前致谢, 约翰。
【问题讨论】:
标签: c#
我一直在寻找这几天,但没有找到任何东西。 我正在尝试找出如何将上下文菜单项添加到 Windows 资源管理器。我不希望它用于特定的文件类型,但我希望它出现在特定路径内的所有内容上。 例如,我希望“C:\folder”内任何内容的右键菜单包含此项目,但它不应出现在此文件夹之外...
这可能吗? 任何帮助将不胜感激!
提前致谢, 约翰。
【问题讨论】:
标签: c#
实现这个的正常方法是将其添加到注册表中:
HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell
但是,在您的特定情况下,您希望在显示之前进行一些预处理(例如,它是否在指定的目录中),这不适用于简单的注册表更改。
我认为有一种方法可以强制您进行任何操作并为其添加挂钩。不过,我现在谈论的是老派知识,我想不出这项技术会被称为什么。例如,我认为您会采用这种方式强制进入渲染引擎,将自定义皮肤放在普通的资源管理器窗口中,或者在应用程序的标题栏中注入一个额外的按钮,就像您过去看到的那样。
我突然想到在 Windows 标题栏中添加一个按钮可能会提供一个搜索起点,我发现这篇文章指的是子类化 Windows 组件并注入您自己的行为。我想这就是我在上面所说的:
希望这能给你一个新的搜索方向。
【讨论】: