gpt4 book ai didi

c# - vb.Net c# 运行批处理文件并流式传输其输出

转载 作者:太空宇宙 更新时间:2023-11-03 16:33:33 27 4
gpt4 key购买 nike

我在 C# 中的 VB.NET 中遇到了这个问题,我有这个项目需要运行一个批处理文件,这很容易。但我的问题是我需要显示批处理文件中显示的所有内容,在 cmd 窗口中,在文本框中,现在,这段代码打开文件没问题:

System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.EnableRaisingEvents = false
proc.StartInfo.FileName = "C:\\Users\\jwoow\\Desktop\\Server\\run.bat";
proc.Start().ToString();

但它不会将代码移到文本框,这段代码会转移最后显示的行,但不会转移批处理文件的全部内容,它还会关闭 cmd 窗口,我需要它保持打开状态:

Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "C:\\Users/jwoow/Desktop/Server/run.bat";
//this line hides cmd window
//p.StartInfo.CreateNoWindow = true;
p.Start();
StreamReader output = p.StandardOutput;
while (output.EndOfStream == false)
{
string line = output.ReadLine();
this.RunResults.Text = line;
}

o 是的,批处理文件用于服务器,它显示服务器上的用户数量(每 2 分钟更新一次)并显示用户采取的不同事件。所以它会不断更新。

最佳答案

执行后使用“暂停”命令保持窗口打开。对于您使用的每个程序,输出到屏幕的文本将有所不同。大多数程序允许您根据您提供的参数显示不同的输出。

关于c# - vb.Net c# 运行批处理文件并流式传输其输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9969756/

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