大约一个月前,我安装了Windows 8。最近出现了这样的问题:当某个进程挂起时,我无法结束/杀死它。无论是任务管理器还是CMD Taskkill /f /PID #### 都无法完成该任务,因此我决定用C#编写自己的进程终止器并查看出现了什么问题。
编写了一个小应用程序后,我意识到我并没有那么聪明——我仍然无法结束该进程。起初,我能够通过名称/PID找到该进程:
Process p = Process.GetProcessById(aPid)
//or
foreach (Process p in Process.GetProcessesByName(aProcessName)
当我尝试时,遇到了“访问被拒绝”的异常:
process.Kill();
尝试了几次后,流程发生了变化,我再也找不到它的过程了。例如,当我尝试按名称或PID查找时,什么都没有返回,而进程仍然存在于任务管理器和我的屏幕上。
我还阅读了有关Process @MSDN的内容,它说如果进程已经终止或无法终止,则可能会引发“访问被拒绝”的错误.. :(
需要帮助吗?真的没有强制结束进程的方法吗?