gpt4 book ai didi

c# - 重定向标准流 (Process.Start)

转载 作者:太空宇宙 更新时间:2023-11-03 11:43:54 26 4
gpt4 key购买 nike

我有以下代码:

 private void button1_Click(object sender, EventArgs e)
{
Process process = new Process();
ProcessStartInfo processStartInfo = new ProcessStartInfo();

processStartInfo.Arguments = "-i 1 -x";
processStartInfo.CreateNoWindow = false;
processStartInfo.FileName = @"F:\NET\WiresharkPortable\App\Wireshark\tshark.exe";
processStartInfo.RedirectStandardOutput = true;
processStartInfo.UseShellExecute = false;
process.StartInfo = processStartInfo;
process.Start();

StreamReader streamReader = process.StandardOutput;
textBox1.AppendText(streamReader.ReadToEnd() + "\r\n");
}

我正在尝试将输出重定向到我的程序。 tshark 是嗅探器,所以它一直工作到被暂停。如何实时重定向数据?谢谢。

最佳答案

您当前正在调用 ReadToEnd,它将阻塞到流的末尾。

您可以或者从单独的线程中重复调用Read或者您可以使用更新的事件处理方法,处理Process.OutputDataReceived调用 BeginOutputReadLine 后的每一行.不要忘记在更改文本框之前编码回 UI 线程。

关于c# - 重定向标准流 (Process.Start),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3913660/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com