Windows 7 x64 无法杀死 Skype

Nul*_*pty 9 skype windows-7 task-manager process

Skype 卡住了,即使 UI 消失,Windows 也无法终止该进程。我不得不重新启动计算机才能让 Skype 再次工作。

以管理员身份运行:

C:\Windows\system32>tasklist | find "Skype"
Skype.exe                     2708 Console                    1     92,328 K

C:\Windows\system32>taskkill.exe /pid 2708 /F /T
SUCCESS: The process with PID 2708 has been terminated.

C:\Windows\system32>tasklist | find "Skype"
Skype.exe                     2708 Console                    1     92,328 K
Run Code Online (Sandbox Code Playgroud)

这怎么可能?

干杯。

小智 6

Unkillable Skype 是由 Skype 线程之一试图关闭辅助功能驱动程序 ( /devices/AFD)的句柄引起的。

此关闭呼叫挂起并且永远不会返回。当您尝试终止进程时,I/O 请求会被取消,但取消也会挂起。进程在其线程返回之前无法退出,并且线程在取消完成之前无法返回,因此进程终止是不可能的。

您可以使用内核模式调试器确认这一点。有关详细信息,请参阅此 TechNet 博客文章

您需要使用远程调试器,因为 Skype 会导致一些未处理的异常,否则会冻结窗口。

可能的原因是某些网络过滤器驱动程序中的一些错误。


cli*_*ole 5

使用这些开关重试Taskkill

taskkill.exe /f /fi "status eq not responding"
Run Code Online (Sandbox Code Playgroud)

您也可以查看HKU\Control Panel\Desktop并将 的值WaitToKillAppTimeout从默认值 16000(毫秒)更改为较低值(但不是 0!),HungAppTimeout并将默认值 4000(毫秒)更改为较低值(但不是 0)。