Hallo Community,
ich bin langsam am verzweifeln.
Ich habe in einem Modul ein Thread am laufen,
weil ich von jeder Form auf diesen Thread zugreifen möchte,
weil mir dort Mein Server auch mal Nachrichten schickt,
die dann beim Client auch angezeigt werden soll.
Hier erstmals mein Code:
Meine versuche mit login.show() waren leider Ergebnis los,
da sich dann die Form aufhängt.
Ich habe auch schon Google bemüht,
und raus gefunden das es dafür Delegaten gibt,
ich habe es damit auch versucht,
nur leider komme ich mit denn delegaten noch nicht zurecht.
Ich sitze jetzt seit Sonntag an diesem Problem und komme auf keine Lösung,
ich hoffe ihr könnt mir helfen,
da ich sonst mein Projekt nicht weiter machen kann.
Bitte helft mir dabei.
ich bin langsam am verzweifeln.
Ich habe in einem Modul ein Thread am laufen,
weil ich von jeder Form auf diesen Thread zugreifen möchte,
weil mir dort Mein Server auch mal Nachrichten schickt,
die dann beim Client auch angezeigt werden soll.
Hier erstmals mein Code:
Code:
Imports System.Net.Sockets
Imports System.IO
Module verbindung_herstellen
Private stream As NetworkStream
Private streamw As StreamWriter
Private streamr As StreamReader
Private client As New TcpClient
Private server_mail As New Threading.Thread(AddressOf server_listen)
Dim IP As String = "**************"
Dim Port As Integer = ************
Public Function verbinden()
Try
client.Connect(IP, Port)
If client.Connected Then
stream = client.GetStream
streamw = New StreamWriter(stream)
streamr = New StreamReader(stream)
client_send(HDWID)
Register = streamr.ReadLine()
server_mail.Start()
Return ("yes")
Else
Return ("no")
End If
Catch
Return ("no")
client.Close()
End Try
End Function
Sub client_send(ByVal text As String)
streamw.WriteLine(text)
streamw.Flush()
End Sub
Private Sub server_listen()
While client.Connected
Dim auswährten() As String = Split(streamr.ReadLine(), ";")
If auswährten(0) = "server_send" Then
MsgBox(auswährten(1))
ElseIf auswährten(0) = "register_ok" Then
MsgBox(auswährten(1))
' hier möchte ich, das er mir meine Login Form öffnet
und die Register Form schließt.
ElseIf auswährten(0) = "userabfrage" Then
MsgBox(auswährten(1))
ElseIf auswährten(0) = "regabfrage2" Then
MsgBox(auswährten(1))
ElseIf auswährten(0) = "Registrier Fehler" Then
MsgBox(auswährten(1))
client_send("logout")
ElseIf auswährten(0) = "logout_ok" Then
client.Close()
stream.Close()
streamw.Close()
streamr.Close()
server_mail.Abort()
server_mail.DisableComObjectEagerCleanup()
Application.Exit()
End If
End While
End Sub
End Module
Meine versuche mit login.show() waren leider Ergebnis los,
da sich dann die Form aufhängt.
Ich habe auch schon Google bemüht,
und raus gefunden das es dafür Delegaten gibt,
ich habe es damit auch versucht,
nur leider komme ich mit denn delegaten noch nicht zurecht.
Ich sitze jetzt seit Sonntag an diesem Problem und komme auf keine Lösung,
ich hoffe ihr könnt mir helfen,
da ich sonst mein Projekt nicht weiter machen kann.
Bitte helft mir dabei.