我需要得到java版本,所以我需要参数"-version“的java进程。
它在cmd上工作,而不是在这段代码上工作。并且,它很好地创建了java进程。但我无法得到输出。
我需要什么来解决这个问题?
Dim JavaProc As New Process()
Dim JavaProcInfo As New ProcessStartInfo("java", "-version")
With JavaProcInfo
.UseShellExecute = False
.RedirectStandardOutput = True
End With
With JavaProc
.StartInfo = JavaProcInfo
.Start()
End With
Dim sOutput As String
Using sReader As System.IO.StreamReader = JavaProc.StandardOutput
sOutput = sReader.ReadToEnd()
End Using
MsgBox(sOutput)发布于 2015-02-23 21:36:56
版本位于StandardError流上。下面是修改过的代码块;请注意,需要重定向StandardError流。
Dim JavaProc As New Process()
Dim JavaProcInfo As New ProcessStartInfo("java", "-version")
With JavaProcInfo
.UseShellExecute = False
.RedirectStandardError = True
End With
With JavaProc
.StartInfo = JavaProcInfo
.Start()
End With
Dim sOutput As String
Using sReader As System.IO.StreamReader = JavaProc.StandardError
sOutput = sReader.ReadToEnd()
End Using
MsgBox(sOutput)https://stackoverflow.com/questions/26730526
复制相似问题