0

次のように渡すときに引数が分割されるため、これを処理する別の方法があるかどうか疑問に思っています。

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"}
4

1 に答える 1

2

問題は、引数を正しく渡していないことです。

次のように、パスを引用符で囲む必要があります。

psi.Arguments = @"""c:\dir1\dir2\dir3\file1.txt""";
于 2010-02-11T18:17:47.280 に答える