我正在尝试使用批处理打开一个文件夹,但想在当前资源管理器窗口中打开该文件夹,而不是在新窗口中打开。与导航相比,再次运行资源管理器所造成的延迟令人烦恼。有什么办法吗?
答案1
Explorer.exe 本身并不适合您想要的那种流畅交互。下面的命令(见下面的代码)可以帮助您实现“某种”您所要求的功能,但看起来不太好。该代码将根据进程 ID 终止旧的 Explorer 进程,并且会受到严重限制,因为它只有在只有一个进程的情况下才会起作用。
使用 Explorer.exe 所能做的最好的事情就是打开一个特定的文件夹,并选择一个文件(它处于焦点中)。这听起来很有希望,而且看起来似乎可以做更多的事情。但它并不像这个功能所暗示的那样通用。因此,根据 Microsoft/SS64 的这些参考资料(在本文底部),您知道您无法从当前打开的 Explorer 进程更改目录。只能终止并打开一个新目录。
REM Kill explorer without having to restart it.
wmic process where "ProcessID='11972'" CALL Terminate
REM Kill/restart Explorer
TaskKill /F /FI "ImageName eq "Explorer.exe"
Explorer
如果您真的想实现目标,最好的选择是使用 Windows Shell 替代品或 AutoIT 等自动化软件。您可以查找主题 Windows shell 替代品,并找到许多具有 Windows 所缺少的其他功能的应用程序、热门主题,或者其中之一正是您要找的。
如果你是一名程序员,你也许可以实现这个https://stackoverflow.com/questions/9355/programmatically-select-multiple-files-in-windows-explorer
来自 Microsoft 的未记录的 Explorer 命令 https://support.microsoft.com/en-us/help/130510/command-line-switches-for-windows-explorer
SS64 资源管理器.exe https://ss64.com/nt/explorer.html