Example #1
0
 private void selectScanner(string scanner)
 {
     if (serSystemConnector != null || dataManSystem != null)
     {
         if (dataManSystem == null)
         {
             serSystemConnector.Disconnect();
             serSystemConnector.Dispose();
             serSystemConnector = null;
         }
         else if (serSystemConnector == null)
         {
             dataManSystem.Disconnect();
             dataManSystem.Dispose();
             dataManSystem = null;
         }
         else
         {
             try
             {
                 dataManSystem.ReadStringArrived -= DataManSystem_ReadStringArrived;
             }
             catch
             {
             }
             dataManSystem.Disconnect();
             dataManSystem = null;
             serSystemConnector.Disconnect();
             serSystemConnector = null;
         }
     }
     try
     {
         serSystemConnector = new SerSystemConnector(scanner);
         dataManSystem      = new DataManSystem(serSystemConnector);
     }
     catch (Exception)
     {
         throw;
     }
     try
     {
         dataManSystem.ReadStringArrived -= DataManSystem_ReadStringArrived;
     }
     finally
     {
         dataManSystem.ReadStringArrived += DataManSystem_ReadStringArrived;
     }
     try
     {
         dataManSystem.SystemDisconnected -= DataManSystem_SystemDisconnected;
     }
     finally
     {
         dataManSystem.SystemDisconnected += DataManSystem_SystemDisconnected;
         if (serSystemConnector.IsKeepAliveSupported)
         {
             serSystemConnector.SetKeepAliveOptions(true, 1000, 2000);
         }
     }
     try
     {
         dataManSystem.SystemWentOffline -= DataManSystem_SystemWentOffline;
     }
     finally
     {
         dataManSystem.SystemWentOffline += DataManSystem_SystemWentOffline;
     }
     dataManSystem.Connect();
     this.Invoke(SetFormTitle, $"扫码校验【{serSystemConnector.PortName},{serSystemConnector.Baudrate},{serSystemConnector.Parity},{serSystemConnector.DataBits},{serSystemConnector.StopBits}】");
 }