嗯,要解释我在这里需要做什么会有点困难,但它是这样的:
我正在构建一个需要运行.exe
的程序(来自不同的文件夹)。
我怎么能这样做,我将能够做Process.start()
,但我也能杀死它?
我的意思是,如果我这样做:
System.Diagnostics.Process process;
process = process.start();
然后我可以做Process.Kill();
但如果我不知道我有多少程序怎么办?我怎样才能杀死它们来做更多更多的进程?
这甚至可能吗?
我希望我能正确解释。我不确定如何更好地解释它:O
答案 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);
// ...
如果更有意义,您还可以使用其他专门的集合(如队列)。