在我的可执行文件Process
中,我有几行Console.ReadLine
。如何在Enter key press
类中通过Process.InputStream
(模拟用户的Enter键)? enter
键在输入字符串中应如何显示?
// in string input I want to have information, that "user" pressed enter key
this.Process.StandardInput.Write(input);
我的流程在后台运行,并且已设置
this.Process.StartInfo.UseShellExecute = false;
标志。
编辑:
在我的exe
文件中,存在类似的代码:
for (int i = 0; i < 3; i++)
{
array[i] = Console.ReadLine();
}
我想在input string
的{{1}}上模拟Enter键
答案 0 :(得分:1)
您可以使用WriteLine()
。
this.Process.StandardInput.WriteLine();
或者您可以手动编写换行符序列。
this.Process.StandardInput.Write(this.Process.StandardInput.NewLine);
两种方法都将AutoFlush
设置为true
this.Process.StandardInput.AutoFlush = true;
或在编写后手动刷新。
this.Process.StandardInput.Flush();
如果您想一次发送更多行,只需一次发送更多换行符,然后再发送任何想要的文本即可。
this.Process.StandardInput.Write( "a" + this.Process.StandardInput.NewLine
+ "b" + this.Process.StandardInput.NewLine);