如何从vb程序中的批处理文件中读取输出

时间:2015-01-01 18:25:43

标签: vb.net batch-file

在此先感谢我只是想知道是否有办法从vb.net程序中读取正在运行的批处理文件的输出。谢谢!

1 个答案:

答案 0 :(得分:0)

正如上面提到的一位评论者所提到的,您可以在VB.NET程序中的shell中运行批处理文件,然后读取定向输出。我在之前的项目中完成了这项工作。

以下是一段代码片段,展示了如何执行此操作:

Dim outputFile As String = """" & Path.GetTempFileName & """"
Dim batchCommand As String = """C:\Path\To\MyFile.bat"">" & outputFile

Dim cmdProcess As New Process
With cmdProcess
    .StartInfo = New ProcessStartInfo("cmd.exe", "/C " & batchCommand)
    With .StartInfo
        .CreateNoWindow = True
        .UseShellExecute = False
    End With
    .Start()
    .WaitForExit()
End With

' This is the output from the batch file.
Dim batchOutput As String = My.Computer.FileSystem.ReadAllText(outputFile)