Exemplo n.º 1
0
        private void btSend_Click(object sender, RoutedEventArgs e)
        {
            string DstAddr   = this.txtRemoteAddr.Text;
            string t_Message = this.txtSend.Text;

            byte[] t_Data = null;
            if (this.chkBinarySend.IsChecked == false)
            {
                t_Data = Encoding.UTF8.GetBytes(t_Message);
            }
            else
            {
                t_Message = t_Message.Trim();
                string[] t_strs = t_Message.Split(' ');
                t_Data = new byte[t_strs.Length];
                for (int i = 0; i < t_strs.Length; i++)
                {
                    t_Data[i] = NetRouterClientHelper.HexStr2Byte(t_strs[i]);
                }
            }
            if (this.m_NetClient != null)
            {
                this.m_NetClient.Send(DstAddr, t_Data);
            }
        }
Exemplo n.º 2
0
        public MainWindow()
        {
            InitializeComponent();
            this.Width  = 800;
            this.Height = 350;

            m_NetClient = new NetRouterClientHelper("测试通信平台发送接收");
            m_NetClient.setStatusStrAction(SetStatusLabel0);
            m_NetClient.setConnectingAction(ConnectCallBack);
            m_NetClient.setConnection1Action(SetStatusLabel2);
            m_NetClient.setConnection2Action(SetStatusLabel3);
            m_NetClient.setReceiveAction(OnReceiveMessage);
        }
Exemplo n.º 3
0
        private void OnReceiveMessage(byte[] p_Data, int p_StartIndex, int p_Length)
        {
            this.SetStatusLabel0("接收到" + p_Length + "字节的数据");
            string t_Message = null;
            // 字符串表示
            string Message1 = Encoding.UTF8.GetString(p_Data, p_StartIndex, p_Length);
            // 十六进制表示
            StringBuilder t_SB = new StringBuilder();

            for (int i = 0; i < p_Length; i++)
            {
                if (t_ReceiveByteCount % 16 == 0)
                {
                    t_SB.Append("\r\n");
                }
                //t_SB.Append(NetRouterClientHelper.Byte2HexStr(p_Data[p_StartIndex + i]));
                t_SB.Append(NetRouterClientHelper.Byte2HexStr(p_Data[p_StartIndex + i]));
                t_SB.Append(" ");
                t_ReceiveByteCount++;
            }
            string Message2 = t_SB.ToString();

            Action del = delegate()
            {
                if (this.chkHEXDisplay.IsChecked == true)
                {
                    t_Message = Message2;
                }
                else
                {
                    t_Message = Message1 + "\r\n";
                }
                string str = this.txtReceive.Text;
                str = str + t_Message;
                this.txtReceive.Text = str;
            };

            this.Dispatcher.Invoke(del, null);
        }