如何为不同的窗口设置不同的 Windows 7 资源管理器布局(带/不带导航窗格)

如何为不同的窗口设置不同的 Windows 7 资源管理器布局(带/不带导航窗格)

我经常想打开 Windows 资源管理器窗口并关闭导航窗格,这样它就美观且紧凑了。但在我的其他 Windows 资源管理器窗口中,我希望导航窗格仍然可见。如果我使用“组织”>“布局”>“导航窗格”选项从窗口 A 中删除导航窗格,然后在窗口 B 中导航到另一个文件夹,则窗口 B 的导航窗格会消失。即,在一个窗口中所做的布局更改将应用​​于所有窗口。

注意我不希望布局应用于特定文件夹,而是应用于特定的资源管理器窗口。我不担心这些更改在窗口重启后是否仍然存在。

答案1

因为我们是双胞胎,所以我觉得我真的必须尝试回答这个问题。

这不是一个完美的解决方案,但我建议安装 AutoHotKey 并创建一个快捷键来打开和关闭导航窗格。在 Windows 8 中,可以使用 键完成此操作Alt,V,N,Space。在 Win7 中应该非常相似。

安装 AutoHotKey 后,您可以创建以下脚本

F12::
ID := WinExist("A")
WinGetClass,Class, ahk_id %ID%
WClasses := "CabinetWClass ExploreWClass"
IfInString, WClasses, %Class%
{
    Send !vn{Space}
}
return

仅在 Explorer 中,这会将 F12 映射为切换导航栏。在任何其他应用中,F12 将继续执行其在该应用中执行的任何操作。

如果发现 Win7 中的快捷键不同,那么很容易发现并更改它们。只需在资源管理器中按 Alt 并查看会出现什么!

当然,这不是一个完美的解决方案。在窗口之间切换时,您可能需要不断地打开和关闭它,但它比在桌面上运行 .bat 文件要快得多。

另一个选择,正如一些人提到的,是使用替代的浏览器。如果没有它,我就无法工作xplorer2,我强烈推荐它。

答案2

根据我的研究,Explorer 的布局由位于中的注册表项 PageSpaceControlSizer 决定:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Modules\GlobalSettings\Sizer

每当打开新的资源管理器窗口或更改显示的文件夹时,都会查阅此注册表项。

因此,我们的想法是,在导航窗格打开或关闭时,创建两个 .reg 文件,其中包含此注册表项的内容。这些内容可以从 regedit 内部导出。以下内容源自我的布局。

导航文件

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Modules\GlobalSettings\Sizer]
"PageSpaceControlSizer"=hex:ce,00,00,00,01,00,00,00,00,00,00,00,10,04,00,00

导航关闭注册表

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Modules\GlobalSettings\Sizer]
"PageSpaceControlSizer"=hex:ce,00,00,00,00,00,00,00,00,00,00,00,10,04,00,00

然后,您可以创建两个批处理 (.bat) 文件,它们将使用reg 命令 或者只是静默导入 .reg 文件:

regedit /s nav_on.reg

在桌面上为这两个批处理文件创建两个快捷方式将使您能够打开或关闭下一个资源管理器窗口或文件夹的导航窗格。

如果您真的希望变得更加出色,您还可以创建两个 Explorer shell 扩展,将“使用导航窗格打开”和“不使用导航窗格打开”选项添加到右键菜单中。

要了解起点,请参阅此文章:
编写 Shell 扩展的完整指南

相关内容