PipeListener

This commit is contained in:
2025-12-03 16:44:45 +01:00
parent 95b92d8599
commit 62944c6f0a
5 changed files with 189 additions and 128 deletions

View File

@@ -164,6 +164,7 @@ Public Class frmHauptfenster
Private listenerThread As System.Threading.Thread
Private Sub StartPipeListener()
listenerThread = New System.Threading.Thread(Sub()
Try
@@ -173,22 +174,23 @@ Public Class frmHauptfenster
Console.WriteLine($"Waiting for messages on pipe {pipeName}...")
Dim server = New NamedPipeServerStream(pipeName, PipeDirection.In, 1, PipeTransmissionMode.Byte, PipeOptions.None, 0, 0, pipeSecurity) ' ← einmalig außerhalb While
While True
Using server = New NamedPipeServerStream(pipeName, PipeDirection.In, 1, PipeTransmissionMode.Byte, PipeOptions.None, 0, 0, pipeSecurity)
Try
server.WaitForConnection()
Using reader = New StreamReader(server, Encoding.UTF8)
Dim message = reader.ReadLine()
Try
server.WaitForConnection()
ProcessMessage(message)
End Using
Using reader = New StreamReader(server, Encoding.UTF8)
Dim message = reader.ReadLine()
server.Disconnect()
Catch ex As Exception
Console.WriteLine("Fehler im Listener: " & ex.Message)
End Try
End Using
ProcessMessage(message)
End Using
server.Disconnect()
Catch ex As Exception
Console.WriteLine("Fehler im Listener: " & ex.Message)
End Try
End While
Catch ex As Exception
@@ -217,6 +219,18 @@ Public Class frmHauptfenster
End If
End Sub)
ElseIf message.StartsWith("OpenAviso_") Then
Invoke(Sub()
Dim split = message.ToString.Split("_")
If split.Count > 1 AndAlso IsNumeric(split(1)) AndAlso split(1) > 0 Then
If IsNumeric(split(1)) AndAlso split(1) > 0 Then
VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID = split(1)
End If
Details_anzeigen(VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID)
End If
End Sub)
End If
End Sub
@@ -5256,4 +5270,9 @@ ELSE_ATILLA:
Dim f As New SDL.cKundenSearchVertrag
f.Show(Me)
End Sub
Private Sub NewsletterToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NewsletterToolStripMenuItem.Click
Dim f As New SDL.frmNewsletter
f.Show(Me)
End Sub
End Class