Beispiel #1
0
        private void ReciveData(IAsyncResult result)
        {
            int length = 0;

            try
            {
                length = m_ServerSocket.EndReceiveFrom(result, ref m_ListenPoint);
                //将接收到的信息转化为自定义的数据报类
                Datagram recviceData = Datagram.Convert(m_Buffer, length);
                //数据解析
                Analysis(recviceData);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                BeginListen();
            }
        }
Beispiel #2
0
        private void Recevie(IAsyncResult result)
        {
            int length = -1;

            try
            {
                length = this.m_ListenSocket.EndReceiveFrom(result, ref m_ListenPoint);
                this.AnalysisData(Datagram.Convert(m_Buffer, length));
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
            }
            finally
            {
                if (!IsDispose)
                {
                    this.m_ListenSocket.BeginReceiveFrom(m_Buffer, 0, m_Buffer.Length, SocketFlags.None, ref m_ListenPoint, new AsyncCallback(Recevie), result);
                }
            }
        }