Process Manager / Hacker显示Windows 8.1中已关闭的进程


1

我最近切换到Windows 8.1 64位专业版,虽然我很喜欢它(Minus Metro),但我有一个非常严重的问题......

Process Explorer(和Process Hacker)显示流氓进程。到目前为止,我只注意到cmd.exe,但可能还有其他人。基本上,当创建cmd.exe进程时,然后关闭--Windows的任务管理器不会显示它,但Process Explorer和Process Hacker都会永久显示它,即使我关闭并重新打开它们也是如此。更糟糕的是,当我收到此错误时,我无法终止进程(即使以管理员身份运行):

---------------------------
Process Hacker
---------------------------
Unable to terminate cmd.exe (PID 2172): An attempt was made to access an exiting process.


---------------------------
OK   Cancel   
---------------------------

这里发生了什么?我怎样才能解决这个问题?我想继续使用Process Manager / Hacker,但是如果它填满了这些死(我假设?)流程,那显然不是一个选择。

还有很多运行的dllhost.exe进程,以及它们 就像他们都一样 - 他们在私人字节中彼此都在4kb之内,但完全相同的工作集。

同样在大多数进程中,Process Explorer中的下部窗格是空白的,或者绝对没有有用的信息(并且只有9行左右),并且大部分与同名的其他进程相同。

Processes running



您看到的错误消息“尝试访问现有进程”是MessageId的MessageText STATUS_PROCESS_IS_TERMINATING,这是NTSTATUS 0xC000010A。所有这些都是根据“ntstatus.h”头文件,它包含在Windows SDK中。
unforgettableid

Answers:


1

我不确定,但这些过程可能是那些“Toombstoned”的过程。

您看到Windows 8引入了一个新功能,即不像旧版本的Windows那样完全杀死应用程序,而只是暂停其线程并存储其当前状态。

这允许下次使用时此类进程启动得更快,因为该进程的某些资源仍存储在内存中。

不要担心Windows会释放内存并完全终止这些进程,如果某些其他进程需要该内存。


有道理,我在Win7中制作的程序太糟糕了,会产生数百个小进程,几乎立即关闭它们。由于问题,我最近很久以前重新安装了Windows 7。
Jon

您使用的是最新版本的Process Manager吗?最新版本可能允许您过滤掉它们。
SilverWarior

此外,我相信有一种方法可以告诉窗口,特定的过程不会在其关闭时被逻辑删除,而是以经典的方式关闭。不幸的是,我不确切知道如何实现这一点。
SilverWarior
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.