Environment.GetCommandLineArgs()的替代方案

时间:2010-02-11 18:11:31

标签: .net command-line-arguments

只是想知道是否有另一种方法来处理这个问题,因为当传入这样的参数时,这些参数会被拆分:

System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo(fileName);
psi.Arguments = @"c:\dir1\dir2\dir3\file1.txt";
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo = psi;
p.Start();

然后,在我们访问Environment.GetCommandLinesARgs()的新应用程序中 我们得到一个如下所示的数组:

string[] arr = {"filename","c:\dir1","dir2","dir3", "file1.txt"}

1 个答案:

答案 0 :(得分:2)

问题是你没有正确传递参数。

您需要在路径中包含引号,如下所示:

psi.Arguments = @"""c:\dir1\dir2\dir3\file1.txt""";