【发布时间】:2012-04-03 15:39:46
【问题描述】:
我正在尝试使用以下代码读取控制台进程的全部内容(3 秒后):
Dim NewProcess As New System.Diagnostics.Process()
With NewProcess.StartInfo
.FileName = EXE_PATH
.RedirectStandardOutput = True
.RedirectStandardError = True
.RedirectStandardInput = True
.UseShellExecute = False
.WindowStyle = ProcessWindowStyle.Normal
.CreateNoWindow = False
End With
NewProcess.Start()
System.Threading.Thread.Sleep(3000)
MsgBox(NewProcess.StandardOutput.ReadToEnd)
但是,在尝试“ReadToEnd”时,应用程序似乎暂停了,我认为这是因为控制台进程是连续输出,并且永远不会真正结束。 'ReadLine' 工作正常,但只获取第一行,但在那个阶段我需要控制台的全部内容。
我该如何解决这个问题?
【问题讨论】: