예제 #1
0
        /// <summary>
        ///     Hàm điều khiển sự kiện nhận dữ liệu
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ComDataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            try
            {
                string raw    = "";
                var    buffer = new byte[] {};

                while (com.BytesToRead > 0)
                {
                    var tempBuffer = new byte[com.BytesToRead];
                    com.Read(tempBuffer, 0, com.BytesToRead);
                    Merge(ref buffer, tempBuffer);
                    Thread.Sleep(50);
                }
                if (btnSaveBinaryFile.Tag.ToString() == "1")
                {
                    _binaryWriter.Write(buffer);
                    _binaryWriter.Flush();
                }
                raw = Encoding.UTF8.GetString(buffer);
                var p = new SettextParametter(txtDlNhan, raw);
                var t = new Thread(ThreadSetText);
                t.Start(p);
                //var t = new Thread(ts);
                //t.Start();
                if (chkAutoAck.Checked)
                {
                    btnAck.PerformClick();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error While Received Data: {0}", ex.ToString());
            }
        }
예제 #2
0
        private void AppendTcpLog(string text)
        {
            string log = string.Format("{0}: {1}", DateTime.Now.ToString("yyyy/MM/dd - HH:mm:ss.ffff"), text);
            var    p   = new SettextParametter(txtTcpLog, string.Format("{0}{1}", log, CRLF));
            var    t   = new Thread(ThreadSetText);

            t.Start(p);
        }
예제 #3
0
        public void OnIncommingData(DataHeader dataHeader, byte[] data)
        {
            string log = string.Format("Receive Data From:{0}:{1} - Length:{2}", dataHeader.ClientIP,
                                       dataHeader.ClientPort, data.Length);

            AppendTcpLog(log);

            var p = new SettextParametter(txtDlNhan, Encoding.UTF8.GetString(data));
            var t = new Thread(ThreadSetText);

            t.Start(p);
            if (btnSaveBinaryFile.Tag.ToString() == "1")
            {
                _binaryWriter.Write(data);
                _binaryWriter.Flush();
            }
        }