.NET 2.x Убить все процессы кроме указанных (системных) - C#

Узнай цену своей работы

Формулировка задачи:

например есть лист:
List<string> name = new List<string>{"svchost", "csrss", "System", "wininit"};
и.т.д Как пройтись циклом и убить все кроме что записано в лист?! Например для убийства такое:
List<string> name = new List<string>{"cal", "skype", "java", "opera"};//процесс, который нужно убить
            System.Diagnostics.Process[] etc = System.Diagnostics.Process.GetProcesses();//получим процессы
            foreach (System.Diagnostics.Process anti in etc)//обойдем каждый процесс
            {
                foreach (string s in name)
                {
                    if (anti.ProcessName.ToLower().Contains(s.ToLower())) //найдем нужный и убьем
                    {
                        anti.Kill();
                        name.Remove(s);
                    }
                }
            }
А вот как мои защитить, что в листе, точнее просто не трогать их!

Решение задачи: «.NET 2.x Убить все процессы кроме указанных (системных)»

textual
Листинг программы
foreach (System.Diagnostics.Process anti in etc)//обойдем каждый процесс
{
    if (name.IndexOf(anti.ProcessName.ToLower())<0) //если процесса нет в списке
    {
        anti.Kill();
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5
Похожие ответы