Autor Beitrag
hoxplus
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Mo 06.04.15 18:04 
Hi Leute,

ich experimentiere gerade etwas mit TCP Sockets und habe Eine Server- und eine Clientanwendung geschrieben. Der Server sendet eine Nachricht
und der Client soll diese empfangen, was allerdings nicht funktioniert. Ich weiß nicht ob dsa Problem auf Server oder auf Clientseite liegt.
Ich poste einfach mal den Code, da dieser wirklich nicht lang ist. Ich hoffe ihr könnt mir helfen.
Danke schonmal im Vorraus

Server:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
Console.WriteLine("Starting Server...");
Socket listener = new Socket(AddressFamily.InterNetworkV6, SocketType.Stream, ProtocolType.Tcp);
IPEndPoint ip = new IPEndPoint(IPAddress.IPv6Any, 4242);
listener.Bind(ip);
listener.Listen(20);
Console.WriteLine("Now listening...");
while (true)
            {
                Socket user = listener.Accept();
                Console.WriteLine("user connected");

                using(NetworkStream str = new NetworkStream(user, false))
                using(StreamWriter writer = new StreamWriter(str))
                {
                    writer.WriteLine("Hi");
                }
                Console.WriteLine("Message sent");
            }

/// Ausgabe:
/// Starting Server...
/// Now listening...
/// user connected
/// MEssage sent


Client:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
IPHostEntry hostDnsEntry = Dns.GetHostEntry("localhost");
IPAddress serverIp = hostDnsEntry.AddressList[0];
Socket serverSocket = new Socket(serverIp.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
serverSocket.Connect(serverIp, 4242);

Console.WriteLine("Connected");
string Data;

using (Stream tststream = new NetworkStream(serverSocket, false))
using (StreamReader reader = new StreamReader(tststream))
{
       Data = reader.ReadToEnd();
}
Console.WriteLine(Data);

/// Ausgabe:
/// Connected


Wenn ich mit dem Client zu Server "time-nw.nist.gov" Auf Port 13 verbinde funktioniert es
Greenberet
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 339
Erhaltene Danke: 20

Win 10
C# (VS 2012), C++ (VS 2012/GCC), PAWN(Notepad++), Java(NetBeans)
BeitragVerfasst: Mo 06.04.15 19:08 
Hast du bei dir am PC nur IPv6 im Einsatz oder auch IPv4?
Beim Server horchst du nur auf IPv6 Adressen, am Client nimmst du jedoch einfach die erste und die könnte auch eine IPv4 Adresse sein.
hoxplus Threadstarter
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Di 07.04.15 08:33 
Hi,

daran lag es nicht. Die Verbindung zum Server hat ja geklappt nur das empfangen nicht.
Ich habe das ganze aber jetzt anderweitig (direkt mit receive und send gelöst).
Trotzdem danke für die Antwort