Process auslesen

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von SystemUnknow.

    Process auslesen

    Hallo programmiere grade mit "RTMPDump", und klappt auch alles soweit.

    Allerdings würde ich gerne auslesen, was in der Konsole steht.
    Danke im Vorraus,
    L88

    VB.NET-Quellcode

    1. Dim process as Process
    2. process = New Process()
    3. process.StartInfo.FileName = RTMPDumpPath
    4. process.StartInfo.Arguments = BatchFile
    5. process.StartInfo.WindowStyle = ProcessWindowStyle.Normal
    6. process.Start()
    Danke für die Beispiele,
    aber ich möchte den Text der in der Konsole steht
    http://www.videohelp.com/toolsimages/rtmpdump_1246.jpg
    genau diesen brauche ich als String.
    Würde gerne Beispiele fürs auslesen bekommen, und nicht fürs beenden.
    Grüße L88
    Ich habe alle eure antworteten getestet und bin auf dieses ergebnis gekommen:

    VB.NET-Quellcode

    1. Sub Start()
    2. process = New Process()
    3. process.StartInfo.FileName = RTMPDumpPath
    4. process.StartInfo.Arguments = BatchFile
    5. process.StartInfo.CreateNoWindow = True
    6. process.StartInfo.UseShellExecute = False
    7. process.StartInfo.RedirectStandardOutput = True
    8. process.StartInfo.RedirectStandardInput = True
    9. process.StartInfo.RedirectStandardError = True
    10. AddHandler process.OutputDataReceived, AddressOf WriteProcessOutput
    11. process.Start()
    12. process.BeginOutputReadLine()
    13. End Sub
    14. Private Sub WriteProcessOutput(ByVal sendingProcess As Object, ByVal outLine As DataReceivedEventArgs)
    15. ' Daten kommen nicht auf GUI Thread -> per anonymer Methode Invoken
    16. If outLine.Data IsNot Nothing Then
    17. Me.Invoke(Sub() TextBox1.AppendText(outLine.Data & Environment.NewLine))
    18. End If
    19. End Sub


    Allerdings wird der Sub "WriteProcessOutput" nicht ausgeführt.
    Könnte mir jemand sagen ob der Code plausibel ist?

    Wenn ich den ProcessOutput nicht umleite sehe ich ja auch Code.
    Danke im Vorraus,
    L88

    L88 schrieb:

    Könnte mir jemand sagen ob der Code plausibel ist?

    Und das soll jetzt bitte was heissen ?

    Der Code den Du von mir kopiert hast ist definitv richtig, wie Du selber testen kannst wenn Du z.B. den Kommandointerpreter aufrufst

    VB.NET-Quellcode

    1. p.StartInfo.CreateNoWindow = False ' zum testen console anzeigen lassen
    2. p.StartInfo.FileName = "cmd.exe"
    3. p.StartInfo.Arguments = "/k net stop wuauserv" ' stoppt den Dienst automatische Updates


    Du stellst nur immer Fragen ohne vernünftige Informationen zu geben
    - wo/wie wird der String RTMPDumpPath gesetzt
    - wo/wie wird die Var Batchfile gesetzt ?? was soll das sein ?
    - wird die Console gestartet

    Vielleicht gibst Du endlich mal von Dir aus eine vernünftige Problembeschreibung mit allen relevanten Informationen , anstatt alles erst auf Anfrage (und dann auch nur zur Hälfte) zu beantworten.

    So denke ich verlieren wir alle schnell die Lust, - ich zumindest.