Process.Close () не завершает созданный процесс, c # - PullRequest
27 голосов
/ 23 марта 2009

Я написал приложение на C #, которое использует класс System.Diagnostics.Process для создания процесса, используя

 Process P1 = new Process();
 P1.FileName = "myexe.exe";

и другие правильные настройки.

Я связал его с исполняемым файлом, который работает около 10 минут. (Я пишу программу для измерения времени выполнения программ). Теперь между ними я хочу прервать запущенный процесс. Так что я написал в событии кнопки отмены,

 Process.Close();

Но в диспетчере задач я все еще вижу запущенный файл myexe.exe, он не прерывается. Что делать?

Ответы [ 3 ]

53 голосов
/ 23 марта 2009

Process.Close () не предназначен для прерывания процесса - он просто предназначен для освобождения вашего «локального» представления о процессе и связанных ресурсах.

Мне кажется, вы имеете в виду Process.Kill () или Process.CloseMainWindow () . Лично я бы попытался найти более изящный способ его отключения.

5 голосов
/ 23 марта 2009

Используйте Process.Kill вместо.

4 голосов
/ 23 марта 2009

Я думаю Process.Kill() это то, что вы ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...