我正在尝试运行以下代码,并希望获得一个名为abc.txt
的文件,其中包含Dir信息。我得到命令提示符,但命令没有运行。
StackOverFlow中有很多问题可以讨论这个问题,但没有提到任何要求或有效。
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = "cmd.exe";
info.RedirectStandardInput = true;
info.UseShellExecute = false;
Process p = Process.Start(info);
if (p.StandardInput.BaseStream.CanWrite)
{
p.StandardInput.WriteLine("dir >>c:\abc.txt");
}
答案 0 :(得分:7)
你必须在sw.WriteLine中为c:\
转义你的“\”只需在此之前添加@:
sw.WriteLine(@"dir >>c:\abc.txt");
考虑:您可能必须在提升的管理上下文中运行您的应用程序才能写入c:\ abc.txt