我到目前为止:
ProcessStartInfo procInfo = new ProcessStartInfo(@"C:\a\a.exe");
procInfo.CreateNoWindow = true;
procInfo.Arguments = "01";
procInfo.Arguments = user_number;
procInfo.Arguments = email;
Process.Start(procInfo);
但是它只传递一个参数(最后一个被覆盖),如何传递多个参数,控制台上的参数是一个数组,这必然意味着我可以传递多个参数?
答案 0 :(得分:6)
您需要传递一个以空格分隔的参数字符串:
procInfo.Arguments = "01 " + user_number + " " + email;
同样的事情,使用格式:
procInfo.Arguments = string.Format("{0} {1} {2}", "01", user_number, email);
答案 1 :(得分:1)
试试这个..
procInfo.Arguments = "01 " + user_number + " " + email;
答案 2 :(得分:1)
每个人都需要连接。只是一个风格的东西,但你可以使用String.Join使参数传递更优雅:
string[] argv = {"01", user_email, email};
ProcessStartInfo procInfo = new ProcessStartInfo(@"C:\a\a.exe");
procInfo.CreateNoWindow = true;
procInfo.Arguments = String.Join(" ", argv);
Process.Start(procInfo);
答案 3 :(得分:0)
将您的参数连接成一个由空格分隔的单个字符串?或者你可以在每个参数之前使用某种标识符,并让.exe应用程序解析字符串。