我基本上是在寻找一种方法来在新选项卡而不是新窗口中打开来自第三方应用程序(或至少只是来自“Everything”)的文件夹
在 Windows 11 文件资源管理器中,有一个选项可以从上下文菜单“在新选项卡中打开”中在新选项卡中打开文件夹,在“Everything”搜索中,上下文菜单条目与文件资源管理器的几乎相同(我说的是当您单击“显示更多选项”时看到的原始上下文菜单),除了“在新选项卡中打开”,它不存在“Everything”上下文菜单中,这让我想知道是否也可以将该条目带入“Everything”的上下文菜单中
我尝试了以下操作:
我在这个领域的知识非常有限,但我做了一些挖掘,发现“在新选项卡中打开”的注册表项是“Computer\HKEY_CLASSES_ROOT\Folder\shell\opennewtab”,它有一个名为“OnlyInBrowserWindow”的键,我认为这个键意味着上下文菜单项只会显示在文件浏览器中,所以我认为如果我删除这个键,“在新选项卡中打开”就会显示在其他上下文菜单中,但不幸的是,这并没有奏效,我无法进一步实现这个想法。
我目前正在使用一个快速而粗糙的 AHK 脚本从 Everything 打开文件夹,然后复制它们的地址并将其粘贴到我正在使用的主文件资源管理器窗口的新选项卡中,它非常丑陋并且不太稳定...如果有人知道可以在新选项卡中打开文件夹的命令行,那将使事情变得容易得多
任何帮助都值得赞赏,并提前感谢
答案1
我的解决方案(虽然也有点笨拙)是这个脚本的修改版本 WIN-E安装包
我添加了一些逻辑来检查是否存在参数,如果有,则在打开资源管理器后打开文件夹。它确实有效,但我不会称其为优雅。
剧本
将其另存为C:\path\to\win-e-everything.ahk
(更改路径)
#SingleInstance, Force
SendMode Input
SetWorkingDir, %A_ScriptDir%
WinGet, ids, List, ahk_class CabinetWClass
if (ids != 0){
Loop, %ids% {
this_id := ids%A_Index%
WinActivate, ahk_id %this_id%
WinWaitActive, ahk_id %this_id%,, 2
active := WinActive(ahk_class CabinetWClass)
if (active != 0) {
send, ^t
; if there are arguments, Ctrl+l and the enter the arguemtn
Sleep, 200
if (%0% != 0) {
send, ^l
send, %1%
send, {enter}
}
break
}
}
}
else {
Run, % "explorer"
}
告诉 Everything 使用它:
选项->上下文菜单->打开路径:
$exec("C:\path\to\win-e-everything.ahk" $pathpart("%1"))
选项->上下文菜单->打开(文件夹):
$exec("C:\path\to\win-e-everything.ahk" "%1")
编辑:如果您有问题,请尝试增加睡眠时间。(其中显示睡眠,200)