VB.NET baretail einbinden und steuern

deusfalsus

Erfahrenes Mitglied
Hallo zusammen!

Ich möchte in einem Windows Form das Programm baretail zur Live-Anzeige von Protokolldateien einbinden.
Es gelingt mir zwar, das Programm mit Übergabe der jeweiligen Datei zu öffnen und in ein Panel zu verfrachten.
Aber wie kann ich baretail dazu bringen, die aktuelle Datei zu schließen und eine neue zu öffnen?

ich öffne so:
Code:
Dim pBaretail As System.Diagnostics.Process

[...]

Private Sub Form1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        pBaretail = New System.Diagnostics.Process
        pBaretail.StartInfo.FileName = "baretail.exe"
[...]
End Sub

[...]

    Private Sub baretail_in_Panel_laden(ByVal Parameter As String)

        Try

            pBaretail.StartInfo.Arguments = Parameter
            pBaretail.Start()

            pBaretail.WaitForInputIdle()
           
            Win32Api.SetParent(pBaretail.MainWindowHandle, pn_LogTail.Handle)
            Win32Api.ShowWindow(pBaretail.MainWindowHandle, Win32Api.SW_MAXIMIZE)
        Catch ex As Exception
             MessageBox.Show(ex.Message.ToString(), "Info")
        End Try
    End Sub

[...]

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click

       baretail_in_Panel_laden("Datei1.txt")

    End Sub

    Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click

       baretail_in_Panel_laden("Datei2.txt")

    End Sub

Das geht zwar so, aber es wird immer ein neuer Prozess gestartet.
Wie kann ich prüfen, ob baretail bereits läuft und es ggf. dazu bringen, die geöffnete Datei zu schließen und eine neue zu öffnen?

Grüße!
 

Neue Beiträge

Zurück