在 WPF 应用程序中,使用 RedirectStandardInput 重定向到 cmd.exe 的命令在命令提示符下不可见

问题描述

在 WPF 应用程序中,使用 RedirectStandardInput 重定向到 cmd.exe 的命令在命令提示符下不可见。

命令提示符视图上的预期输出应该是

Microsoft Windows [Version 10.0.18362.1256]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\>echo test1
test1

C:\>echo test2
test2

C:\>echo test3
test3

C:\>echo test4
test4

C:\>exit

实际输出为:

enter image description here

使用中的代码

var info = new processstartinfo();
info.FileName = "cmd.exe";
info.RedirectStandardInput = true;
info.WorkingDirectory = @"C:\";
info.RedirectStandardOutput = true;
info.RedirectStandardError = true;
info.UseShellExecute = false;
info.CreateNowindow = false;
p.StartInfo = info;
p.Start();
p.OutputDataReceived += P_OutputDataReceived;
p.ErrorDataReceived += P_ErrorDataReceived;
p.BeginoutputReadLine();
p.BeginErrorReadLine();
using (StreamWriter sw = p.StandardInput)
{
    if (sw.BaseStream.CanWrite)
    {
        foreach (var item in lines)
        {
            sw.WriteLine(item);
            Thread.Sleep(2000);
        }
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)