1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
/// <summary>
/// Beendet alle Prozesse, die nicht mehr reagieren.
/// </summary>
/// <returns>
/// Zeichenkette, die angibt, welche Processe beenden wurden
/// und welche nicht beendet werden konnten.
/// </returns>
public static String QuitAllNotRespondingProcesses()
{
StringBuilder stringBuilder = new StringBuilder();
foreach (Process process in Process.GetProcesses())
{
if (!process.Responding)
{
try
{
process.PriorityClass = ProcessPriorityClass.Idle;
Thread.Sleep(1000);
process.Kill();
stringBuilder.AppendLine(process.ProcessName + " wurde beendet");
}
catch (Exception)
{
stringBuilder.AppendLine(process.ProcessName + " konnte nicht beendet werden");
}
}
}
return stringBuilder.ToString();
}
|