Kill process tree programmatically in C#

Я запускаю Internet Explorer программно с кодом, который выглядит следующим образом:

ProcessStartInfo startInfo = new ProcessStartInfo("iexplore.exe");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = "http://www.google.com";
Process ieProcess = Process.Start(startInfo);

Это создает 2 процесса, видимых в диспетчере задач Windows. Затем я пытаюсь убить процесс с помощью:

ieProcess.Kill();

В результате один из процессов в диспетчере задач закрывается, а другой остается. Я попытался проверить любые свойства, которые будут иметь дочерние процессы, но не нашел. Как я могу убить и другой процесс? В более общем плане, как убить все процессы, связанные с процессом, который вы запускаете с помощью Process.Start?

40
задан Cœur 4 April 2017 в 14:52
поделиться