在Process Class中运行多个进程

时间:2011-08-14 23:24:58

标签: c#

嗯,要解释我在这里需要做什么会有点困难,但它是这样的:

我正在构建一个需要运行.exe的程序(来自不同的文件夹)。

我怎么能这样做,我将能够做Process.start(),但我也能杀死它?

我的意思是,如果我这样做:

System.Diagnostics.Process process;
process = process.start();

然后我可以做Process.Kill();但如果我不知道我有多少程序怎么办?我怎样才能杀死它们来做更多更多的进程?

这甚至可能吗?

我希望我能正确解释。我不确定如何更好地解释它:O

1 个答案:

答案 0 :(得分:2)

您可以将创建的流程存储在列表中以跟踪它们。杀死它们时将它们从列表中删除:

var list = new List<Process>();

var p1 = Process.Start(...);
list.Add(p1);
// similarly for other processes, or run this in a loop

// later...
var p = list[0];
p.Kill();
list.Remove(p);
// ...

如果更有意义,您还可以使用其他专门的集合(如队列)。