使用StartInfo.Arguments传递多个参数的正确语法是什么?

时间:2015-10-14 10:27:32

标签: c# syntax command-line-arguments processstartinfo

我的目标是从C#Windows窗体应用程序中向命令行发出以下命令:

load.exe --ip="192.168.1.88" C:\MyFiles\file1.txt C:\MyFiles\file2.txt

以下是我目前的尝试,我发现它没有执行所需的行为,也没有出现任何构建或运行时错误:

string ipAddress = "192.168.1.88"
public static void LoadMyFiles(string ipAddress)
    {
        Process process1 = new System.Diagnostics.Process();
        process1.StartInfo.FileName = @"C:\Program Files (x86)\MyProgram\load.exe";
        process1.StartInfo.UseShellExecute = false;
        process1.StartInfo.Arguments = "--ip=\"ipAddress\" C:\\MyFiles\\file1.txt\ C:\\MyFiles\\file2.txt\";
        process1.StartInfo.RedirectStandardOutput = true;
        process1.Start();
    }

我使用String.Concat尝试使用StartInfo.Arguments的另一种尝试也无法正常执行。

processL1.StartInfo.Arguments = String.Concat("--ip=\"", ipAddress, "\"C:\\MyFiles\\file1.txt C:\\MyFiles\\file2.txt");

如果我在cmd窗口中手动发出上述行,并且因此认为这已经缩小到语法问题,我已经验证了所需的行为。

对于我所做的任何语法问题的答案表示赞赏。

0 个答案:

没有答案