Advertisement
Guest User

Server eines Noobs

a guest
May 28th, 2016
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.28 KB | None | 0 0
  1. using System.IO;
  2. using System;
  3. using Microsoft.Win32;
  4. using System.Diagnostics;
  5. using System.Net;
  6. using System.Net.Sockets;
  7. using System.Text;
  8.  
  9. class Program
  10. {
  11.     public static void Main()
  12.     {
  13.         // Variablen deklarieren und das erste mal intitialisieren
  14.         IPAddress IpAdressen = IPAddress.Any;
  15.         IPEndPoint MyServerEndpoint = null;
  16.         Socket MyServerSocket = null;
  17.         const int Port = 4662;
  18.         byte[] Bytes = new byte[5555];
  19.         string data = "";
  20.         int bytesRec = 5555;
  21.  
  22.  
  23.         // <Vorstellung>
  24.         // Den Endpoint Mit (IpAdressen, Port) initialisieren!
  25.         // Den Socket initialisieren mit den Werten (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
  26.         // Auf Deutsch:                             (InterNetwork, Stream, Tcp)
  27.         // Server- Socket binden: MyServerEndpoint
  28.         // </Vorstellung>
  29.         MyServerEndpoint = new IPEndPoint(IpAdressen, Port);
  30.         MyServerSocket = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
  31.         MyServerSocket.Bind (MyServerEndpoint);
  32.         Console.WriteLine ("Ich hoere den Port {0} ab!", Port);
  33.  
  34.  
  35.  
  36.         // <Vorstellung>
  37.         // Auf Connection warten
  38.         // Dann einen String entgegennehmen
  39.         // Und diesen zuruecksenden
  40.         // </Vorstellung>
  41.         try
  42.         {
  43.             // Den Listener Starten
  44.             MyServerSocket.Listen(20);
  45.  
  46.  
  47.  
  48.             // Verbindung- endlos- Schleife
  49.             while(true)
  50.             {
  51.                 Console.WriteLine("Ich warte, bis sich ein Client connecten will...");
  52.                 Socket DerzeitigerClient = MyServerSocket.Accept();
  53.                 data = null;
  54.  
  55.                 // Ein Process wird empfangen, dann wir ein String angenommen und zurueckgesendet!
  56.                 while (true)
  57.                 {
  58.                     bytesRec = DerzeitigerClient.Receive(Bytes);
  59.                     data = Encoding.ASCII.GetString(Bytes, 0, bytesRec);
  60.  
  61.                     // Bei Fehler wird die while- Schleife unterbrochen
  62.                     if (data.IndexOf("<EOF>") > -1)
  63.                     {
  64.                         break;
  65.                     }
  66.  
  67.                     // Nachricht ausgeben und zuruecksenden
  68.                     Console.WriteLine("Habe folgende Nachricht erhalten: " + Encoding.ASCII.GetString(Bytes));
  69.                     DerzeitigerClient.Send(Bytes);
  70.  
  71.                     // Verbindung beenden
  72.                     DerzeitigerClient.Shutdown(SocketShutdown.Both);
  73.                     DerzeitigerClient.Close();
  74.                 }
  75.             }
  76.  
  77.         }
  78.         catch(Exception e)
  79.         {
  80.             Console.WriteLine(e.ToString() + "\nExeption wurde geworfen!");
  81.         }
  82.  
  83.         Console.WriteLine("\nDruecke ENTER!");
  84.         Console.Read();
  85.     }
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement