在Windows 7 Pro(64位)上运行多个explorer.exe进程是否正常?
(因此,请澄清一下,这与Windows Internet Explorer浏览器iexplore.exe无关。)
根据Windows任务管理器,我目前在此计算机上运行5个explorer.exe进程。我没有打开任何资源管理器(即Windows文件资源管理器)窗口,并且我是此计算机上的唯一用户。无论如何,当我没有单击“显示所有用户的进程”按钮时,这些多个浏览器进程就会显示在任务管理器中。
我已将任务管理器配置为在“进程”选项卡下显示“命令行”列,并基于这些内容通过以下命令行启动:
“ C:\ Windows \ Explorer.exe”
“ C:\ Windows \ explorer.exe / factory,{75dff2b7-6936-4c06-a8bb-676a7b00b24b}-嵌入”
“ C:\ Windows \ explorer.exe / factory,{ceff45ee-c862-41de-aee2-a022c81eda92}-嵌入”
根据Process Hacker的介绍,这些都是由看起来正常的winit.exe> services.exe> svchost.exe启动的。
svchost.exe正在运行(根据Process Hacker):DcomLaunch,PlugPlay和Power。
可能是上面列表中底部的两个“ explorer.exe”进程(命令行以“ embeddding”结尾)可能已经由其他进程启动了吗?如果是这样,我如何找到可能产生这些作用的进程?
显然,这是一个没有记录的设计决策。在Win7之前,只有一个实例explorer.exe
,除非启用了“在一个单独的进程中启动文件夹窗口”,否则会出现非常错误的情况。
从Win7开始,explorer.exe
即使禁用了“在一个单独的进程中启动文件夹窗口” ,您也可能有多个运行状态。即使在全新安装的Windows上,这也是正常的行为。它可以通过explorer.exe
使用一个或多个众所周知的命令行参数运行来触发。
例子:
explorer.exe C:\
explorer.exe /select,C:
尽管更改和更改的原因未记录在案,但这似乎是一个有意的设计决策,或者是Win7 RTM之前放弃的一项雄心勃勃的设计决策的遗留内容。该前提基于以下事实:如果/factory,
在注册表中找到CLSID ,则可能会发现以下有趣的现象。
{ceff45ee-c862-41de-aee2-a022c81eda92} // CLSID_SeparateSingleProcessExplorerHost
启用“在一个单独的进程中启动文件夹窗口”后,该命令将从命令行开始/factory,{ceff45ee-c862-41de-aee2-a022c81eda92} -Embedding
。
{75dff2b7-6936-4c06-a8bb-676a7b00b24b}` // CLSID_SeparateMultipleProcessExplorerHost
当explorer.exe
使用一个或多个命令行参数(通常由通过启动实现“打开包含文件夹”的程序调用explorer.exe /select,<file path>
)启动时,它将以命令行启动/factory,{75dff2b7-6936-4c06-a8bb-676a7b00b24b} -Embedding
。通过指定,它有意为每次调用启动一个新实例SingleUse
。
因此,要回答你的答案,找什么样的过程产生了多重explorer.exe
的{75dff2b7-6936-4c06-a8bb-676a7b00b24b}
,你需要确定哪些程序启动explorer.exe
与参数等/select
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句