C# 向现有流程的StandardIn写入

C# 向现有流程的StandardIn写入,c#,C#,在您开始的过程中,有许多解决方案可用于编写标准。但我找不到任何已经存在的流程。以下是我尝试使用的代码: Process[] pname = Process.GetProcessesByName("cgminer"); Process curProcess = pname[0]; StreamWriter myStreamWriter = curProcess.StandardInput; myStreamWriter.WriteLine("q"); myS

在您开始的过程中,有许多解决方案可用于编写
标准。但我找不到任何已经存在的流程。以下是我尝试使用的代码:

Process[] pname = Process.GetProcessesByName("cgminer");                    
Process curProcess = pname[0];
StreamWriter myStreamWriter = curProcess.StandardInput;
myStreamWriter.WriteLine("q");
myStreamWriter.Flush();
myStreamWriter.WriteLine("q");
myStreamWriter.Flush();

因此,这不起作用,并抛出一个
StandardIn未被重定向
错误。有什么想法吗?

那么,如果重定向当前输入,会发生什么
pname.Options.RedirectStandardInput
?您能更具体一点吗?进程类不存在成员“选项”。我是从内存中执行的。它真的是
pname.StartInfo.RedirectStandardInput
。啊,是的,我以前已经试过了,它不起作用。只有在按照“StartInfo”的建议进行任何更改后启动新流程,StartInfo才有效。