我的桌面上有一个名为test
的文件夹。我想创建一个批处理文件,以便在使用Windows资源管理器打开此文件夹时自动关闭窗口。我尝试了下一个命令,但执行
TASKKILL /F /FI "WINDOWTITLE eq test" /IM explorer.exe
显示的消息是
No tasks running with the specified criteria.
任何帮助?
答案 0 :(得分:3)
如果在Windows注册表中
,则无法使用命令taskkill
关闭文件夹的Windows资源管理器窗口
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced
双字 SeparateProcess 分别具有值 0 选项在单独的进程中启动文件夹窗口 查看 Folder Options 的标签未选中。
当foxidrive发现时(请阅读下面的评论)我也可以确认,在Windows XP SP3上启用此设置对即使重新启动后在打开的文件夹上运行的explorer.exe
的数量也没有影响视窗。
因此,它取决于Windows的版本(2000,XP,Vista,7,8,8.1)和文件夹选项
如果可以使用命令taskkill
来关闭资源管理器文件夹窗口以及在标题栏中找到哪个字符串,只需要文件夹的名称或文件夹的完整路径。
在Windows XP上或在单独的进程中启动文件夹窗口未启用时,文件夹窗口不会作为单独的任务分别作为单独的进程打开。
独立于打开多少个文件夹窗口,每个用户的explorer.exe
进程数始终为1.每个文件夹窗口实际上只是一个单独打开的Windows资源管理器(桌面)窗口线。 Windows资源管理器只是假装文件夹窗口是Windows任务栏上和Windows任务管理器的应用程序选项卡上的单独任务。但是,即使打开了多个文件夹窗口,Windows任务管理器的进程选项卡上也只列出了一个explorer.exe
。
使用{em> explorer.exe 的免费工具 Process Explorer 可以更好地观看Windows资源管理器的这种行为,并在 explorer.exe 上查看< strong>处理此进程,其中包含许多其他句柄以及打开的文件夹窗口的句柄。
需要一个控制台应用程序,它按标题查找窗口,获取此窗口的句柄并将WM_CLOSE
事件消息发送到此文件夹窗口。参见例如
答案 1 :(得分:1)
答案 2 :(得分:0)
此问题适用于Windows 8.1
,explorer folder options
设置为single window
,但是根据Mofi的回答和Mofi的回答中的评论,那么解决方案取决于Windows版本。
Windows 8.1中有效的功能在Windows XP中不起作用。
TASKKILL /F /FI "WINDOWTITLE eq %userprofile%\desktop\test" /IM explorer.exe
答案 3 :(得分:0)
启用“文件夹视图”选项下的标题中显示完整路径时,将导致错误。
您可以将“ test”替换为完整路径,或禁用完整路径显示。
默认情况下,资源管理器作为单个进程运行,任何打开的窗口都只是该进程的一个线程。
通常,要关闭程序,您需要向进程发送一条关闭消息。在这种情况下,关闭explorer.exe将关闭所有资源管理器窗口。
要关闭单个窗口,您需要通过自己的过程打开每个窗口。 这可以通过注册表设置或在“视图”->“选项”->“视图”->“高级设置”下启用:“启动...单独的过程”
a)在您要关闭的窗口中找到PID(进程ID)。
通过taskmanager:
1.在进程列表中,单击“ Windows资源管理器”左侧的箭头
2.检查窗口名称是否与您要关闭的窗口匹配
3.右键单击“ Windows资源管理器”,单击“转到详细信息”
4.记录pid
通过CMD:
tasklist /V /FI "IMAGENAME eq explorer.exe"
如果在自己的进程中打开了每个浏览器窗口,则上述命令将在最后一列显示窗口标题。
否则将显示“ N / A”。
所有资源管理器窗口的pid将相同。 Explorer.exe进程具有自己的pid,标题为“ N / A”
如果已启用“单独过程”,例如通过“文件夹视图”选项,然后可以通过taskkill的进程ID和过滤器选项关闭每个窗口。
要关闭,必须先激活所需的窗口,否则使用pid关闭将关闭最后一个活动窗口,或者使用窗口标题过滤器关闭将给出错误:
信息:没有按指定条件运行的任务。
b)taskkill /pid <pid>
将关闭最后一个活动窗口。
重复此命令将进入下一个窗口。
或taskkill /im explorer.exe /fi "windowtitle eq <window name>"
或taskkill /fi "IMAGENAME eq explorer.exe" /fi "windowtitle eq <window name>"
<窗口名称>不区分大小写
如果在“文件夹”视图中启用了标题栏中的完整路径,请添加完整路径或通配符。
要关闭所有资源管理器窗口,请执行以下操作:
taskkill /im explorer.exe
在Win 10上测试