使用String args []调用C#中的进程

时间:2014-05-23 11:12:48

标签: c# process main

我想用C#调用带有多个参数的进程。

当我打电话时:

ProcessStartInfo info = new ProcessStartInfo();
...
info.Arguments = "argument";
Process.Start(info);

我只能将String设置为属性。 (与所有类型的Start方法相同)

有没有办法将String[]设置为参数,或者如何解释此String

因为在另一边

static void Main(string[] args)

我收到String[]

提前致谢。

2 个答案:

答案 0 :(得分:3)

从技术上讲,你可以这样做:

  string[] args = new String[] {"argument1", "argument2", "argument3"};

  ...

  info.Arguments = String.Join(" ", args);

限制是args不应该包含带空格的参数

答案 1 :(得分:2)

  

有没有办法将String []设置为参数?

不,你不能这样做,因为ProcessStartInfo.Arguments的类型是string。因此,您可以为其分配一个字符串数组。

您可以将参数传递给此字符串,如下所示:

info.Arguments = "argument1 argument2 argument3";

并且当您传递包含元素(argument1argument2argument3)的字符串数组时,您的.exe将被执行。