Задать вопрос
moClay
@moClay
учусь всему

Как закрыть экземпляр проводника через его pid?

В задании сказано открывать проводники по клавише K и закрыть все открытые проводники клавишей x. У меня получилось закрывать их по названию программы (explorer.exe), но вместе с этим система перезагружалась. По pid совсем не получается закрывать открытые проводники

List ids = new List();
for (int i =0; i<5; i++)
{
Word = Console.ReadLine();
Word_to_2 = StringToBinary(Word);

switch (Word_to_2)
{
case "01001011":
Process p = Process.Start("explorer.exe");
ids.Add(p.Id);
break;
case "01010110":
Console.WriteLine("Введите путь");
Path = Console.ReadLine();
break;
case "01000010":
Console.WriteLine("Введите название файла");
File_name = Console.ReadLine();
FileStream fileStream = File.Create(Path + File_name);
StreamWriter output = new StreamWriter(fileStream);
output.Close();
break;
case "01101110":
File.Delete(Path + File_name);
break;
case "01111000":

foreach (var e in ids)
{
Process pp = Process.GetProcessById(e);
pp.Kill();
}
break;
}
}
}
  • Вопрос задан
  • 96 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия C#-разработчик
    12 месяцев
    Далее
  • Merion Academy
    C# разработчик с нуля
    4 месяца
    Далее
  • Stepik
    PRO C#. Профессия "Backend разработчик"
    4 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 2
vesper-bot
@vesper-bot
Любитель файрволлов
Открываешь проводники как дочерние процессы, запоминаешь их PID'ы, потом прибиваешь когда надо. Функцию, как процесс по PID получить, выше написали.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы