Con l' occasione ho rispolverato un mio vecchio progetto a scopo didattico...un' interfaccia a cmd...mi sono accorto del problema appena ho modificato il codice, inoltre mentre il processo lavora non si può interagire con il Form e se quest' ultimo si chiude il processo rimane attivo a causa di 'pr.WaitForExit()'.
Nel codice sotto eseguo il processo in un nuovo Thread in modo da non "bloccare" il form e leggendo qui:
http://msdn.microsoft.com/it-it/libr...(v=vs.90).aspx
ho aggiunto il codice per ottenere il risultato voluto, funziona ma mi sembra un' accrocchio...stò usato Delegate e Invoke senza capirne appieno il reale utilizzo (stile codemonkey ), manca lo "stop" del processo/Thread e non riesco a capire perchè
codice:
AddHandler pr.OutputDataReceived, AddressOf pr_outline
non funge....

codice:
Imports System.Threading

Public Class Form1

    Dim WithEvents pr As New Process()
    Dim pr_Thread As Thread = Nothing
    Delegate Sub pr_tbox_deleg(ByVal riga As String)

    Private Sub Button1_Click() Handles Button1.Click
        pr_Thread = New Thread(New ThreadStart(AddressOf pr_ping))
        pr_Thread.Start()
    End Sub

    Private Sub pr_ping()
        Dim args As New ProcessStartInfo("cmd.exe")
        With args
            .Arguments = "/c ping -n 10 www.google.it"
            .RedirectStandardOutput = True
            .UseShellExecute = False
            .CreateNoWindow = True
        End With
        pr = Process.Start(args)
        pr.BeginOutputReadLine()
    End Sub

    Private Sub pr_outline(sendingProcess As Object, outLine As DataReceivedEventArgs) Handles pr.OutputDataReceived
        If Not String.IsNullOrEmpty(outLine.Data) Then
            tbox_appendtext(outLine.Data)
        End If
    End Sub

    Private Sub tbox_appendtext(ByVal riga As String)
        If TextBox1.InvokeRequired Then
            Dim a As New pr_tbox_deleg(AddressOf tbox_appendtext)
            Invoke(a, New Object() {riga})
        Else
            TextBox1.AppendText(riga & vbCrLf)
        End If
    End Sub

End Class