Facebook
From Serwer, 6 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 204
  1. using System;
  2. using System.Net;
  3. using System.Net.Sockets;
  4. using System.Text;
  5. using System.Collections;
  6. public class UdpSrvrSample
  7. {
  8.    static BitArray ProtocolBuilder(string operation,string response,string idref)
  9.    {
  10.         int pom1 = 0, pom2 = 0, pom3 = 0;
  11.        BitArray c = new BitArray(24);
  12.         BitArray g = new BitArray(24);
  13.         for(int i=0;i<c.Length;i++)
  14.         {
  15.             if(i<=5)
  16.             {
  17.                 if (operation[pom1] == '0')
  18.                     c[i] = false;
  19.                 else
  20.                     c[i] = true;
  21.                 pom1++;
  22.             }  
  23.             if(i>5 && i<=9)
  24.             {
  25.                 if (response[pom2] == '0')
  26.                     c[i] = false;
  27.                 else
  28.                     c[i] = true;
  29.                 pom2++;
  30.             }
  31.             if(i>9 && i<=17)
  32.             {
  33.                 if (idref[pom3] == '0')
  34.                     c[i] = false;
  35.                 else
  36.                     c[i] = true;
  37.                 pom3++;
  38.             }
  39.             if (i > 17)
  40.                 c[i] = false;
  41.         }
  42.         for (int i = 0; i < c.Length; i++)
  43.         {
  44.             g[g.Length - i-1] = c[i];
  45.         }
  46.         Console.Write("\n");
  47.         return g;
  48.    }
  49.  
  50.     public static void Main()
  51.     {
  52.         byte[] data = new byte[1024];
  53.         BitArray c = new BitArray(24);
  54.         BitArray HGH;
  55.         for (int i=0;i<c.Length;i++)
  56.         {
  57.             c[i] = true;
  58.  
  59.         }
  60.        
  61.         HGH = ProtocolBuilder("110011", "1011", "01011010");
  62.         byte[] bytes = new byte[3];
  63.         HGH.CopyTo(bytes, 0);
  64.         Array.Reverse(bytes, 0, bytes.Length);
  65.  
  66.         for (int i = 0; i < bytes.Length; i++)
  67.         {
  68.             Console.Write(bytes[i]);
  69.             Console.Write("\n");
  70.         }
  71.  
  72.         IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 9050);
  73.         UdpClient newsock = new UdpClient(ipep);
  74.  
  75.         Console.WriteLine("Waiting for a client...");
  76.  
  77.         IPEndPoint sender = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 0);
  78.  
  79.         data = newsock.Receive(ref sender);
  80.  
  81.        
  82.  
  83.    
  84.         newsock.Send(bytes,bytes.Length, sender);
  85.  
  86.         while (true)
  87.         {
  88.             data = newsock.Receive(ref sender);
  89.  
  90.             Console.WriteLine(Encoding.ASCII.GetString(data, 0, data.Length));
  91.             newsock.Send(data, data.Length, sender);
  92.         }
  93.     }
  94. }