I'm trying to make my tcp/ip server for my net+ board. But it dont works.
I have 2Years with vb, but only 3Days with netduino and thats my Problem. Please can someone help me?
Here is my code (for the Netduino):
Imports System.Net.Sockets Imports System.IO Imports System.Net Module Module1 Private server As TcpListener Private client As New TcpClient Private ipendpoint As IPEndPoint = New IPEndPoint(IPAddress.Any, 8000) ' eingestellt ist port 8000. dieser muss ggf. freigegeben sein! Private list As New List(Of Connection) Private Structure Connection Dim stream As NetworkStream Dim streamw As StreamWriter Dim streamr As StreamReader Dim nick As String ' natürlich optional, aber für die identifikation des clients empfehlenswert. End Structure Private Sub SendToAllClients(ByVal s As String) For Each c As Connection In list ' an alle clients weitersenden. Try c.streamw.WriteLine(s) c.streamw.Flush() Catch End Try Next End Sub Sub Main() Console.WriteLine("Der Server läuft!") server = New TcpListener(ipendpoint) server.Start() While True ' wir warten auf eine neue verbindung... client = server.AcceptTcpClient Dim c As New Connection ' und erstellen für die neue verbindung eine neue connection... c.stream = client.GetStream c.streamr = New StreamReader(c.stream) c.streamw = New StreamWriter(c.stream) c.nick = c.streamr.ReadLine ' falls das mit dem nick nicht gewünscht, auch diese zeile entfernen. list.Add(c) ' und fügen sie der liste der clients hinzu. Debug.Print(c.nick & " has joined.") ' falls alle anderen das auch lesen sollen können, an alle clients weiterleiten. siehe SendToAllClients Dim t As New Threading.Thread(AddressOf ListenToConnection) t.Start(c) End While End Sub Private Sub ListenToConnection(ByVal con As Connection) Do Try Dim tmp As String = con.streamr.ReadLine ' warten, bis etwas empfangen wird... Debug.Print(con.nick & ": " & tmp) SendToAllClients(con.nick & ": " & tmp) ' an alle clients weitersenden. Catch ' die aktuelle überwachte verbindung hat sich wohl verabschiedet. list.Remove(con) Debug.Print(con.nick & " has exit.") Exit Do End Try Loop End Sub End Module
Or is there an Network Tutorial in VisualBasic? =)
Sorry for my bad english.
mfg & thx
gfcwfzkm