我有此脚本可以终止所有进程,但也可以终止导致蓝屏的Windows默认进程
如何在不发生这种情况的情况下终止所有进程
Process self = Process.GetCurrentProcess() ;
foreach( Process p in Process.GetProcesses().Where( p => p.Id != self.Id ) )
{
p.Kill() ;
}
答案 0 :(得分:3)
您需要拥有一个不会被杀死的进程名称白名单。 请在下面查看我的示例。
Process self = Process.GetCurrentProcess() ;
IList<string> whiteList = new List<string>() {"svchost.exe", "explorer.exe"....};
foreach( Process p in Process.GetProcesses().Where( p => p.Id != self.Id && !whitelist.Contains(p.ProcessName ) )
{
p.Kill() ;
}