首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用流程标准输出(VB.NET)获得java版本

无法使用流程标准输出(VB.NET)获得java版本
EN

Stack Overflow用户
提问于 2014-11-04 08:21:51
回答 1查看 580关注 0票数 0

我需要得到java版本,所以我需要参数"-version“的java进程。

它在cmd上工作,而不是在这段代码上工作。并且,它很好地创建了java进程。但我无法得到输出。

我需要什么来解决这个问题?

代码语言:javascript
复制
    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)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-23 21:36:56

版本位于StandardError流上。下面是修改过的代码块;请注意,需要重定向StandardError流。

代码语言:javascript
复制
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)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26730526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档