目前,我正在使用 ProcessStartInfo 围绕 CMD 开发一个小型包装器,试图模拟命令窗口并添加一些我迫切需要的额外功能。
此 WINFORM 应用程序是一个多选项卡应用程序,因此您可以启动多个“会话”。此外,由于内容存储在富文本框中,我可以轻松复制它,更重要的是搜索控制台日志。
到目前为止,一切似乎都运行良好,但是当我询问当前目录时,我看到了这个应用程序的位置,这很好。但是当我向上一个目录时,它似乎不起作用。
我很确定我做错了什么。可以指出我是什么,我做错了什么吗?这是处理代码执行的代码摘录。
System.Diagnostics.ProcessStartInfo procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd");
procStartInfo.RedirectStandardOutput = true;
procStartInfo.RedirectStandardError = true;
procStartInfo.RedirectStandardInput = true;
procStartInfo.UseShellExecute = false;
// Do not create window.
procStartInfo.CreateNoWindow = true;
// Now we create a process, assign its ProcessStartInfo and start it
proc = new System.Diagnostics.Process();
proc.StartInfo = procStartInfo;
proc.OutputDataReceived += new System.Diagnostics.DataReceivedEventHandler(onOutputDataReceived);
proc.ErrorDataReceived += new System.Diagnostics.DataReceivedEventHandler(onErrorDataReceived);
proc.Start();
proc.StandardInput.WriteLine("/c " + cmd);
proc.StandardInput.Close();
proc.BeginOutputReadLine();
proc.BeginErrorReadLine();
proc.WaitForExit();