Example #1
0
 public void JoinMulticastGroup()
 {
     try
     {
         mcastSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
         IPAddress  localIPAddr = IPAddress.Any;
         IPEndPoint IPlocal     = new IPEndPoint(localIPAddr, 0);
         mcastSocket.Bind(IPlocal);
         MulticastOption mcastOption;
         mcastOption = new MulticastOption(Networking.mcastAddress, localIPAddr);
         mcastSocket.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, mcastOption);
     }
     catch (Exception e)
     {
         Console.WriteLine(e.ToString());
         mf.Invoke(mf.fatalError, "Errore di connessione alla rete");
     }
 }
 private void StartMulticast()
 {
     try
     {
         mcastSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
         IPAddress localIPAddr = IPAddress.Any;
         EndPoint  localEP     = (EndPoint) new IPEndPoint(localIPAddr, Networking.mcastPort);
         mcastSocket.Bind(localEP);
         mcastOption = new MulticastOption(Networking.mcastAddress);
         mcastSocket.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, mcastOption);
         //mcastSocket.MulticastLoopback = false;
     }
     catch (Exception e)
     {
         Console.WriteLine(e.ToString());
         mf.Invoke(mf.fatalError, "Errore di connessione alla rete");
     }
 }
Example #3
0
 public void Start()
 {
     Console.WriteLine("Listen.Start()");
     try
     {
         Thread th = new Thread(Receive);
         th.IsBackground = true;
         th.Name         = "RecvFileListen";
         th.Start();
     }
     catch (Exception e)
     {
         Console.WriteLine(e.ToString());
         mf.Invoke(mf.fatalError, "Errore fatale");
     }
 }