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:
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!
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!