哪些 Windows 资源管理器替代品具有此功能:接管文件夹打开操作?

Sto*_*der 2 windows file-management software-rec windows-explorer

在 Superuser 上至少有一些关于 Explorer 替代品(又名替代文件管理器)的主题。首选线程似乎是这个:https : //superuser.com/q/90/60860

但是我想要的是这些可用选项的一个更窄的子集,具有我在标题中指出的功能:也就是说,我只对这些与 Windows 集成并且不需要打开或启动的资源管理器替代品感兴趣. 换句话说,如果我双击一个文件夹,那么这个文件夹将被这个资源管理器替换打开。这与不从资源管理器接管的替代文件管理器的数量形成对比。我做了一些搜索,用户fluxtendu链接了一个很酷的维基百科页面,其中包含文件管理器之间的功能比较,但不幸的是它没有提到我正在寻找的功能。

我已经从个人经验中了解到满足这一标准的一个:Explorer++。我被告知通过afrazier该目录作品和explorer2也做到这一点。还有哪些其他选择?

当然,我也很感激推荐。我想我对 Explorer++ 并不完全满意,这就是我想尝试其他人的原因。

Der*_*ler 5

问题是 Windows 资源管理器还为 Windows 提供了整个外壳。因此,当您单击该文件夹图标时,您很可能已经在使用资源管理器。它只是启动另一个进程(或窗口)。

您可能想研究外壳替换。


更新

好的,让我更详细地谈谈我对事物的理解。

整个系统如何运作

让我们从我的桌面开始。
我的桌面是由shell绘制的。shell 由explorer.exeWindows 启动时运行的初始进程提供。如果我的桌面上有一个文件夹:
在此处输入图片说明

我可以双击打开它: 在此处输入图片说明

这创建了一个新explorer.exe进程,该进程现在显示显示我的文件夹内容的窗口。但是有很多方法可以打开同一个窗口。

那么为什么 Windows 决定使用explorer.exe来显示该文件夹呢?
嗯,正如我所说,桌面已经是一个explorer.exe过程。所以它只是ShellExecuteEx()用来让 shell 决定如何处理它。然后外壳将创建一个新explorer.exe实例(因为据我所知,它是硬连接的)。

所以你能做的,不是explorer.exe用来提供你的外壳(就像你已经做的那样)。您可以简单地在注册表中提供一个替代应用程序:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell
Run Code Online (Sandbox Code Playgroud)

但是没有人阻止那个新的 shell 调用ShellExecuteEx(),这将再次调用默认的 shell,因此,explorer.exe

所以现在怎么办?

因此,如果您真的要替换 Windows 资源管理器,请将文件 explorer.exe. 因为,最终,每个程序仍然可以尝试C:\Windows\explorer.exe直接执行,然后您又拥有相同的旧资源管理器。

但是,请记住,我从未尝试explorer.exe在系统上进行替换,所以我不知道这是否可能和/或稳定使用。

应用程序XYZ是如何做到的?

有几个应用程序可以简单地插入资源管理器,例如QTTabBar。也许 Explorer++ 的工作方式相同。这样你就不需要接触任何东西,因为你的修改总是加载到新explorer.exe进程中。详细了解该过程将需要一个全新的答案。

文件打开对话框呢?

这是一系列全新的问题。该文件保存打开文件对话框是部分通用对话框库。试图取代那些是很难想象的。关于那些我所说的几乎相同explorer.exe。但这会更可怕。