如何为回收站添加上下文菜单
Posted
技术标签:
【中文标题】如何为回收站添加上下文菜单【英文标题】:How can I add a context menu for recycle bin 【发布时间】:2012-08-21 14:37:32 【问题描述】:如何为 Windows 回收站添加上下文菜单?我如何最终访问其中的文件?我知道回收站是一个虚拟文件夹,它有一个树状结构,我必须一路访问里面的文件吗?
已编辑:
HKLM
NoRemove Software
NoRemove Classes
NoRemove CLSID
NoRemove 645FF040-5081-101B-9F08-00AA002F954E
NoRemove shellex
NoRemove ContextMenuHandlers
ForceRemove FC944A65-4422-4A2C-B867-1BA01318A944
【问题讨论】:
如果您需要所有文件,那么是的,您需要枚举它们。作为一个虚拟文件夹不会改变任何东西。如果您只需要一个文件,那么是哪一个? 我需要所有出现在回收站中的文件,但是如何为其注册上下文菜单? 不要像这样直接将你的 Shell 扩展注册到HKCR
。请改用HKCU\Software\Classes
和/或HKLM\Software\Classes
。由于HKCR
是多个注册表项的合并视图,因此只能用于读取数据,不能用于写入数据。
现在怎么样?我又修改了一遍。
无论如何,在 msdn 页面上,他们为 HKEY_CLASSES_ROOT\CLSID 使用 str8 并且它适用于其他文件类型扩展名。
【参考方案1】:
查看以下注册表项:
HKEY_CLASSES_ROOT\CLSID\645FF040-5081-101B-9F08-00AA002F954E\Shell
HKEY_CLASSES_ROOT\CLSID\645FF040-5081-101B-9F08-00AA002F954E\ShellEx
对于您正在尝试的内容,您可能需要编写上下文菜单外壳扩展并将其注册到 ShellEx
键中。
Creating Shell Extension Handlers
Creating Shortcut Menu Handlers
【讨论】:
伙计,我将发布我的注册 dll 的代码,我查看注册表,它在那里,但是上下文菜单没有显示在回收站上,上下文菜单出现在我已将其注册到的其他文件(如 .txt 文件)。以上是关于如何为回收站添加上下文菜单的主要内容,如果未能解决你的问题,请参考以下文章
如何为 FrameLayout 中的多个视图制作浮动上下文菜单?
如何为 ListView 的 ContextActions 的 MenuItem 添加可见性绑定