现象
在安装PowerShell 7时勾选“在 .ps1 文件的右键菜单项加入‘用 PowerShell 7 打开’”,然后在对应的右键菜单中确实出现了,但在 Context Menu Manager Plus 中找不到。
原理
打开 Context Menu Manager Plus 默认检索的对应注册表位置,同样找不到 PowerShell 7 相关的项,只有系统自带的 PowerShell 5.1 相关的项。
用 AI 搜索后,才知道 PowerShell 7 真正写入的针对 .ps1 扩展名文件的右键菜单项的注册表位置是在 "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Microsoft.PowerShellScript.1\Shell\PowerShell7x64"
而这个注册表位置并没有被 Context Menu Manager Plus 作为针对 .ps1 扩展名文件类型的加入到注册表检索项,导致无法查找到这一项,更无法进行管理。
总结
我不确定是否只有 .ps1 这一种文件扩展名有这种特殊情况,还是因为 PowerShell 7 本身的特殊性导致的这一情况。但是,这种特殊情况也还是希望能够被 Context Menu Manager Plus 检索到并进行管理。不知道开发者有没有什么更好的解决思路。
现象
在安装PowerShell 7时勾选“在 .ps1 文件的右键菜单项加入‘用 PowerShell 7 打开’”,然后在对应的右键菜单中确实出现了,但在 Context Menu Manager Plus 中找不到。
原理
打开 Context Menu Manager Plus 默认检索的对应注册表位置,同样找不到 PowerShell 7 相关的项,只有系统自带的 PowerShell 5.1 相关的项。
用 AI 搜索后,才知道 PowerShell 7 真正写入的针对 .ps1 扩展名文件的右键菜单项的注册表位置是在 "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Microsoft.PowerShellScript.1\Shell\PowerShell7x64"
而这个注册表位置并没有被 Context Menu Manager Plus 作为针对 .ps1 扩展名文件类型的加入到注册表检索项,导致无法查找到这一项,更无法进行管理。
总结
我不确定是否只有 .ps1 这一种文件扩展名有这种特殊情况,还是因为 PowerShell 7 本身的特殊性导致的这一情况。但是,这种特殊情况也还是希望能够被 Context Menu Manager Plus 检索到并进行管理。不知道开发者有没有什么更好的解决思路。