无法将Program Files Path变量作为进程的参数传递

时间:2013-04-01 18:16:15

标签: c# .net

我想将程序文件目录中的目录作为参数返回。我正在使用AppDomain.CurrentDomain.BaseDirectory获取该参数。如何正确格式化它以将其作为参数发送。

这是我现在正在做的事情

String[] arguments = { Settings.Default.installDir, Settings.Default.executableName, "\"" + AppDomain.CurrentDomain.BaseDirectory + "\"" };

AppDomain.CurrentDomain.BaseDirectory返回驻留在程序文件(x86)中的目录。

myprocess.StartInfo.Arguments = String.Join(" ", arguments);

当我运行它时,我得到“PROGRAM_FILES GSSDesktopAlerts.exe”C:\ Program Files(x86)\ somedir \ somesubdir \\“”

启动时我收到System.ArgumentException:路径中的字符非法。

1 个答案:

答案 0 :(得分:0)

忘记使用“\”“。 你应该使用逐字字符串。例如:@“\”。 使用Path.Combine代替“+”运算符。