La idea es mostrar en tiempo real el contenido de ese archivo en un textbox, y esta es mi primera prueba, usando un Timer a 100ms.
Código vb:
Ver original
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick Dim logFileStream As New FileStream(Application.StartupPath & "\" & ServerNameValue & "\" & "server.log", FileMode.Open, FileAccess.Read, FileShare.ReadWrite) Dim logFileReader As New StreamReader(logFileStream) While Not logFileReader.EndOfStream Dim line As String = logFileReader.ReadLine() For Each line2 In line If Not TextBox1.Text.Contains(line) Then TextBox1.Text = TextBox1.Text & line & vbNewLine End If Next End While ' Clean up logFileReader.Close() logFileStream.Close() End Sub
Funciona, pero el programa se ralentiza lo que no está escrito, hasta el punto de que sencillamente no me puedo permitir usar esto.
Desde luego la clave no es usar un timer que esté leyéndolo todo continuamente y escribiéndolo todo en el textbox una y otra vez.
¿Alguien sabe otra forma mejor de hacerlo?