Может быть, лучше сделать это внутри цикла do
/ while
:
System.Diagnostics.Process[] procs = System.Diagnostics.Process.GetProcessesByName(proc.ProcessName, Environment.MachineName);
Затем выполните итерацию по procs
, чтобы узнать, что еще работает ..., используя свойство HasExited
...
Логика заключается в том, что подпроцессы процесса принадлежат вашему коду, так что вы можете сначала проверить, вышли они или нет, если нет, продолжайте цикл ...
Надеюсь, это поможет,
С наилучшими пожеланиями,
Том.