ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

ContextMenuManager:3 分钟管住 Windows 右键菜单

ContextMenuManager:3 分钟管住 Windows 右键菜单 ContextMenuManager3 分钟管住 Windows 右键菜单【免费下载链接】ContextMenuManager️ 纯粹的Windows右键菜单管理程序项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager右键文件夹准备复制路径菜单弹出来十几项某压缩软件的解压到、某网盘的备份、两个你已经卸载但菜单还挂在那儿的名字最底下还有一行你叫不出名字的英文。ContextMenuManager 是一个 Windows 右键菜单管理程序把这些散落在注册表里的菜单项收进一个列表逐项勾选启用、禁用改名、换图标、定位注册表或者删除前自动备份成.reg文件。能力全景禁用第三方塞进来的菜单项文件、文件夹右键菜单下的每一个条目都带一个可见性开关取消勾选立即生效再勾上就能恢复。适合只想把某项藏起来、又不想动注册表的普通用户。定位并清理卸载残留卸载软件后残留的菜单项右键该条目选详情程序会带你跳转到对应的注册表项和命令指向的文件确认归属后再删除。README 里作者也明说程序不替你做清理判断定位才是它的活儿。按菜单场景分组管理条目定制新建菜单和打开方式新建菜单想加一个纯文本或 HTML 快捷项打开方式和自定义文件格式的条目同样可以增删改。程序内置的 ShellNew 模板资源放在ContextMenuManager/Properties/Resources/ShellNew/目录新建条目时会用到。管理 WinX 等系统菜单WinX 电源菜单、IE 浏览器菜单也各有一个管理页条目支持上移下移调整顺序。界面内置中、英、日、韩、俄、葡、阿等 9 种语言语言文件是独立的 ini放在仓库languages/目录下换语言不用改代码。底层机制用系统原生键值隐藏菜单隐藏一项菜单Win10 1703 及以上写入HideBasedOnVelocityId更早版本回退到LegacyDisable和ProgrammaticAccessOnly逻辑在 ContextMenuManager/Controls/ShellItem.cs 里if(value) { RegistryEx.DeleteValue(RegPath, HideBasedOnVelocityId); DeleteSomeValues(); } else { if(WinOsVersion.Current WinOsVersion.Win10_1703) { Registry.SetValue(RegPath, HideBasedOnVelocityId, 0x639bc8); } else { Registry.SetValue(RegPath, LegacyDisable, ); Registry.SetValue(RegPath, ProgrammaticAccessOnly, ); } }值得注意的不是具体键值而是只写系统预留键、不碰菜单项本体的策略——菜单项原样保留随时可逆这一点和直接删键值的工具不同。接管 TrustedInstaller 保护的注册表项部分菜单项的注册表项归 TrustedInstaller 所有普通管理员打开会直接报权限错误。程序在 ContextMenuManager/BluePointLilac.Methods/RegTrustedInstaller.cs 里用 P/Invoke 启用SeTakeOwnershipPrivilege和SeRestorePrivilege把所有权转到当前管理员blRc OpenProcessToken(GetCurrentProcess(), TokenAccessRights.AllAccess, ref processToken); if(blRc false) return false; blRc LookupPrivilegeValue(null, sPrivilege, ref luid); if(blRc false) return false; newTP.PrivilegeCount 1; newTP.Privileges new LUID_AND_ATTRIBUTES[64]; newTP.Privileges[0].Luid luid; newTP.Privileges[0].Attributes (int)PrivilegeAttributes.Enabled; blRc AdjustTokenPrivileges(processToken, false, ref newTP, 16, ref oldTP, ref retrunLength);这段代码的价值在于用系统令牌特权机制接管所有权而不是遇到权限不足就放弃。多语言加载、按日期归档的备份等其余机制都是围绕这两件事做的配套。英文界面条目带可见性开关快速上手获取并运行程序推荐从 Releases 下载 zip 包如果你习惯看源码git clone https://gitcode.com/gh_mirrors/co/ContextMenuManager后打开ContextMenuManager.sln自己编译。程序分 .NET 3.5 和 .NET 4.0 两个版本覆盖 Win7 到 Win11启动时需要管理员权限。选择管理场景主界面按场景分组文件、文件夹、新建、发送到、打开方式、自定义格式、IE 浏览器、WinX。点进去就是该场景下的全部条目图标加名称右侧一列可见性开关。完成第一次禁用取消勾选某项右侧的复选框该项马上从 Windows 右键菜单消失想反悔再勾回来即可。删除操作前先确认自动备份开关是开着的。试试右键菜单项在条目上右键可以改名称、换图标、定位注册表位置、导出注册表。改名称对应写入MUIVerb键值长度超过 80 字符系统会隐藏该项程序会提前拦下并提示。进阶用法把删除当成可反悔的操作开着自动备份删除菜单项时程序先问一句删除但可以恢复确认后把整个注册表项导出为.reg文件按日期存到配置目录下的 Backup 文件夹目录规则在 ContextMenuManager/Methods/AppConfig.cs 里定义。哪天想恢复双击对应的.reg文件导入即可。用隐藏属性做二级菜单条目右键里的仅按住Shift键显示对应Extended键值把不常用但舍不得删的项挪进 Shift右键才显示的扩展区置于顶部、仅在资源管理器显示同理。我个人更推荐优先用这种方式因为功能还留着只是收起来了。残留项处理顺序先详情→导航注册表位置确认归属再用导出注册表存一份.reg最后删除。三步都在条目右键菜单里不用自己开注册表编辑器摸黑找键。与同类方案对比维度ContextMenuManagerShellExViewWin10Debloat许可证GPL-3.0 开源免费闭源MIT 开源是否需管理员权限是查看无需删除需要是批量操作逐项启用/禁用可导出备份批量删除 COM 扩展批量勾选精简备份机制删除前自动导出 .reg无无覆盖范围文件、文件夹、新建、发送到、打开方式、IE、WinXShell ExtensionsWin10/11 系统精简项需要可逆地禁用和恢复菜单项选它更稳只想快速查看机器上装了哪些 Shell 扩展ShellExView 更轻。已知局限与注意事项夺取 TrustedInstaller 所有权后无法还原源码注释里作者也承认这一点受保护键值的所有者会一直留在当前管理员名下。程序要频繁读写注册表Windows Defender 可能误报为病毒需要手动把它加进白名单。部分菜单项即使勾选启用也不会显示因为受其他键值或程序影响这是 Windows 的行为不是程序失效。不建议和别的右键菜单清理工具同时用别的程序用删除法禁用的项这里可能直接看不到得先回原程序还原。收尾核心价值一句话把 Windows 右键菜单变成可勾选、可恢复、可定位的清单。如果你右键菜单里已经有十几个不认识的选项花 5 分钟禁用其中几个试试反手就能撤销。【免费下载链接】ContextMenuManager️ 纯粹的Windows右键菜单管理程序项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表