Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.IO;
- using System;
- using Microsoft.Win32;
- using System.Diagnostics;
- using System.Net;
- using System.Net.Sockets;
- using System.Text;
- class Program
- {
- public static void Main()
- {
- // Variablen deklarieren und das erste mal intitialisieren
- IPAddress IpAdressen = IPAddress.Any;
- IPEndPoint MyServerEndpoint = null;
- Socket MyServerSocket = null;
- const int Port = 4662;
- byte[] Bytes = new byte[5555];
- string data = "";
- int bytesRec = 5555;
- // <Vorstellung>
- // Den Endpoint Mit (IpAdressen, Port) initialisieren!
- // Den Socket initialisieren mit den Werten (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
- // Auf Deutsch: (InterNetwork, Stream, Tcp)
- // Server- Socket binden: MyServerEndpoint
- // </Vorstellung>
- MyServerEndpoint = new IPEndPoint(IpAdressen, Port);
- MyServerSocket = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
- MyServerSocket.Bind (MyServerEndpoint);
- Console.WriteLine ("Ich hoere den Port {0} ab!", Port);
- // <Vorstellung>
- // Auf Connection warten
- // Dann einen String entgegennehmen
- // Und diesen zuruecksenden
- // </Vorstellung>
- try
- {
- // Den Listener Starten
- MyServerSocket.Listen(20);
- // Verbindung- endlos- Schleife
- while(true)
- {
- Console.WriteLine("Ich warte, bis sich ein Client connecten will...");
- Socket DerzeitigerClient = MyServerSocket.Accept();
- data = null;
- // Ein Process wird empfangen, dann wir ein String angenommen und zurueckgesendet!
- while (true)
- {
- bytesRec = DerzeitigerClient.Receive(Bytes);
- data = Encoding.ASCII.GetString(Bytes, 0, bytesRec);
- // Bei Fehler wird die while- Schleife unterbrochen
- if (data.IndexOf("<EOF>") > -1)
- {
- break;
- }
- // Nachricht ausgeben und zuruecksenden
- Console.WriteLine("Habe folgende Nachricht erhalten: " + Encoding.ASCII.GetString(Bytes));
- DerzeitigerClient.Send(Bytes);
- // Verbindung beenden
- DerzeitigerClient.Shutdown(SocketShutdown.Both);
- DerzeitigerClient.Close();
- }
- }
- }
- catch(Exception e)
- {
- Console.WriteLine(e.ToString() + "\nExeption wurde geworfen!");
- }
- Console.WriteLine("\nDruecke ENTER!");
- Console.Read();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement