Beispiel #1
0
        //_________________________________________________________________________
        /// <summary>
        /// Обработка ответа от прибора
        /// </summary>
        private void RecieveDataPassive(IAsyncResult ar)
        {
            try
            {
                if (ar.IsCompleted == false)
                {
                    return;
                }
                CTCPclient ClientCurr = ar.AsyncState as CTCPclient;
                if (ClientCurr == null)
                {
                    return;
                }
                NetworkStream Stream = ClientCurr.Stream;
                if (Stream != null)
                {
                    int iLenRX = Stream.EndRead(ar);
                    if (iLenRX == 0)
                    {
                        Stream.Close();
                        return;
                    }

                    EvSendAnswerToServer?.Invoke(ClientCurr.BufRX, iLenRX);
                    Inv_OutMess($"Прибор: {Global.ByteArToStr (ClientCurr.BufRX, 0, iLenRX)} [{Global.BytesToInt_Char (ClientCurr.BufRX, iLenRX)}");                     //{CBIP2.Text}
                }
            }
            catch (Exception exc)
            {
                Inv_OutMess($"RecieveDataPassive: {exc.Message}{Environment.NewLine}{exc.StackTrace}");
            }
        }
 //_________________________________________________________________________
 /// <summary>
 /// Обработка ответа от прибора
 /// </summary>
 private void RecieveDataPassive(byte[] BufRX, int iLenRX)
 {
     lock (this)
     {
         try
         {
             EvSendAnswerToServer?.Invoke(BufRX, iLenRX);
             Inv_OutMess($"Прибор: {Global.ByteArToStr (BufRX, 0, iLenRX)} [{Global.BytesToInt_Char (BufRX, iLenRX)}");
         }
         catch (Exception exc)
         {
             Inv_OutMess($"RecieveDataPassive: {exc.Message}{Environment.NewLine}{exc.StackTrace}");
         }
     }
 }