Я хочу вызвать процесс из С# с несколькими параметрами.
Когда я звоню:
ProcessStartInfo info = new ProcessStartInfo();
...
info.Arguments = "argument";
Process.Start(info);
Я могу установить только атрибут String
. (То же самое для всех типов метода Start)
Есть ли способ установить String[]
качестве аргументов или как интерпретировать эту String
?
Потому что с другой стороны
static void Main(string[] args)
Я получаю String[]
.
Заранее спасибо.
Есть ли способ установить параметр String [] в качестве аргумента?
Нет, вы не можете этого сделать, поскольку тип ProcessStartInfo.Arguments
- это string
. Следовательно, вы можете назначить ему массив строк.
Вы можете передать этой строке следующие параметры:
info.Arguments = "argument1 argument2 argument3";
и ваш.exe будет выполнен, поскольку вы передавали массив строк с элементами (argument1
, argument2
, argument3
).
Технически вы можете сделать это так:
string[] args = new String[] {"argument1", "argument2", "argument3"};
...
info.Arguments = String.Join(" ", args);
ограничение состоит в том, что args не должны иметь аргументов с пробелами