Esempio n. 1
0
 public static SerialPort GetSerialPort(System.Net.Sockets.Socket socket, string portName, int baudRate)
 {
     lock (ports)
     {
         SerialPort sp  = null;
         string     key = portName.ToUpper();
         try
         {
             sp = ports[key];
             if (sp.InUse())
             {
                 throw new Exception("Port is already in use!");
             }
             sp.SetSocket(socket);
         }
         catch (KeyNotFoundException)
         {
             sp = new SerialPort(socket, portName, baudRate);
             sp.OpenPort();
             ports.Add(key, sp);
         }
         return(sp);
     }
 }