Broadcast

Nikon the Third

Erfahrenes Mitglied
Hallo.
Wie schreibe ich in C# einen Broadcast z.B. auf den Port 1234?

Ich habe es derzeit so versucht, das funktioniert aber nicht:
TcpClient client = new TcpClient(
new IPEndPoint(IPAddress.Broadcast, 1234));
NetworkStream astream = client.GetStream();
astream.WriteByte(12);
while(!astream.DataAvailable)Thread.Sleep(100);
byte[] buffer = new byte[256];
astream.Read(buffer,0,buffer.Length);
Console.WriteLine(Encoding.ASCII.GetString(buffer));
Console.Read();

Details:

Ich habe vor, einen kleinen LAN-Chat zu schreiben.
Dazu möchte ich TcpListener und TcpClient verwenden.
Jedoch muss ich nach dem Start des Programms jemanden finden, der
mir die Benutzerliste mit allen IP's schicken kann.
Dazu habe ich mir vorgestellt, einen Broadcast auf den Port z.B. 1234 zu schicken
und auf eine Antwort zu warten.

Wenn nun ein laufender Chat die Anforderung registriert, schreibt er die Ip des Servers zurück an den Sender. Dieser kann dann von dem alle nötigen Informationen abfragen.
Ich habe einfach mal so drauf los programmiert, rausgekommen ist der Code oben.

Was muss ich noch ändern, oder ist mein System Blödsinn?
 
In der MS Hilfe zu C# findest Du ein Beispiel. Schau mal nach Remoting und TCP Server. Die Beispiele können auch auf den Seiten der MSDN nachgeladen werden.

Außerdem gibt es in diesem Forum mind. 4 gleiche Thread's zu diesem Thema, die gelöst sind.

Chris
 

Neue Beiträge

Zurück