我的目标是从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窗口中手动发出上述行,并且因此认为这已经缩小到语法问题,我已经验证了所需的行为。
对于我所做的任何语法问题的答案表示赞赏。