private void BtnSend_Click(object sender, EventArgs e) { string send = this.txtSend.Text; if (send.Length == 0) { return; } if (chkAddNewLine.Checked) { send += Environment.NewLine; } byte[] bytes = Encoding.UTF8.GetBytes(send); IntPtr connId = client.ConnectionId; // 发送 if (client.Send(bytes, bytes.Length)) { string strMsg = string.Format("$ ({0}) Send OK --> {1}", connId, send); AddLog(strMsg); AddMsg(strMsg); } else { string strMsg = string.Format("$ ({0}) Send Fail --> {1} ({2})", connId, send, bytes.Length); AddLog(strMsg); AddMsg(strMsg); } }
private void btnSend_Click(object sender, EventArgs e) { try { string send = this.txtSend.Text; if (send.Length == 0) { return; } byte[] bytes = Encoding.Default.GetBytes(send); IntPtr connId = client.ConnectionId; // 发送 if (client.Send(bytes, bytes.Length)) { AddMsg(string.Format("$ ({0}) Send OK --> {1}", connId, send)); } else { AddMsg(string.Format("$ ({0}) Send Fail --> {1} ({2})", connId, send, bytes.Length)); } } catch (Exception ex) { AddMsg(string.Format("$ Send Fail --> msg ({0})", ex.Message)); } }
/// <summary> /// Send_Data /// </summary> /// <param name="order"></param> public void Send_Data(int order) { try { Rec_Ok = false; //清除接收完成标志 Receive_Cordinate = new Vector(0, 0); //清除接收反馈坐标值 string send = order.ToString(); if (send.Length == 0) { return; } byte[] bytes = Encoding.Default.GetBytes(send); IntPtr connId = client.ConnectionId; // 发送 if (client.Send(bytes, bytes.Length)) { isSend = true; //Log.Info("发送成功!!!"); } else { isSend = false; Log.Error("发送失败!!!"); } } catch (Exception ex) { Log.Error(ex.Message); } }
public void Send(byte[] data) { if (!m_bConnect) { return; } m_TcpClient.Send(data, data.Length); }
private void buttonSend_Click(object sender, EventArgs e) { string sendContent = textBoxSendMsg.Text; if (sendContent.Length < 1) { return; } try { //byte[] sendBytes = Encoding.Default.GetBytes(sendContent); byte[] sendBytes = Encoding.GetEncoding("UTF-8").GetBytes(sendContent); client.Send(sendBytes, sendBytes.Length); textBoxSendMsg.Text = string.Empty; } catch (Exception exc) { ShowMSG(string.Format("发送失败:{0}", exc.Message)); } }
/// <summary> /// Send_Data /// </summary> /// <param name="order"></param> public void Send_Data(int order) { //检测是否连接 if (!ConnectOk) { LogErr?.Invoke("相机未连接,Send命令取消!!!"); return; } //发送数据 try { Rec_Ok = false; //清除接收完成标志 Receive_Cordinate = new Vector(0, 0); //清除接收反馈坐标值 string send = order.ToString(); if (send.Length == 0) { return; } byte[] bytes = Encoding.Default.GetBytes(send); IntPtr connId = client.ConnectionId; // 发送 if (client.Send(bytes, bytes.Length)) { isSend = true; } else { isSend = false; LogErr?.Invoke("发送失败!!!"); } } catch (Exception ex) { LogErr?.Invoke(ex.Message); } }
private void btnStart_Click(object sender, EventArgs e) { try { string address = this.txtIpAddress.Text.Trim(); ushort port = ushort.Parse(this.txtPort.Text.Trim()); TestTimes = int.Parse(this.cbxTestTime.Text.Trim()); TestInterv = int.Parse(this.cbxTestInterv.Text.Trim()); ThreadCount = int.Parse(this.cbxThreadCount.Text.Trim()); ThreadInterv = int.Parse(this.cbxThreadInterv.Text.Trim()); DataLength = int.Parse(this.cbxDataLength.Text.Trim()); if (CheckParams() == false) { throw new Exception("params error!"); } SetAppState(AppState.Starting); Timeconsuming = 0; TotalReceived = 0; TotalSent = 0; ExpectReceived = (Int64)TestTimes * (Int64)ThreadCount * (Int64)DataLength; clientList.Clear(); // 创建指定线程个数的客户端 for (int i = 0; i < ThreadCount; i++) { TcpClient client = new TcpClient(); client.SetCallback(OnPrepareConnect, OnConnect, OnSend, OnReceive, OnClose, OnError); if (client.Start(address, port) == true) { clientList.Add(client); } else { foreach (var c in clientList) { c.Stop(); } clientList.Clear(); throw new Exception(string.Format(" > {2}, Connection to server fail ->({0},{1})", client.GetlastError(), client.GetLastErrorDesc(), i)); } } AddMsg(string.Format("$ Client start ok -> ({0}:{1})", address, port)); // 延迟3秒 int sendDelay = 3; AddMsg(string.Format(" *** willing to send data after {0} seconds ...", sendDelay)); // Delay2(sendDelay * 1000); SetAppState(AppState.Started); testThread = new Thread(delegate() { Thread.Sleep(sendDelay * 1000); AddMsg(string.Format(" *** begin... ***", sendDelay)); // 发送的数据包 byte[] sendBytes = new byte[DataLength]; StopWatch.Restart(); bool isTerminated = false; for (int i = 0; i < TestTimes; i++) { for (int j = 0; j < ThreadCount; j++) { TcpClient client = clientList[j]; if (client.Send(sendBytes, sendBytes.Length) == false) { AddMsg(string.Format("$ Client send fail [sock: {0}, seq: {1}] -> {3} ({2})", i + 1, j + 1, client.SYSGetLastError(), client.GetSocketErrorDesc(SocketError.DataSend))); isTerminated = true; break; } if (ThreadInterv > 0 && j + 1 < ThreadCount) { Thread.Sleep(ThreadInterv); //Delay2(ThreadInterv); } } if (isTerminated == true) { break; } if (TestInterv > 0 && i + 1 < TestTimes) { Thread.Sleep(TestInterv); //Delay2(TestInterv); } } }); testThread.Start(); } catch (Exception ex) { SetAppState(AppState.Stoped); AddMsg(string.Format("$ Start fail msg:{0}", ex.Message)); } }
private void btnSend_Click(object sender, EventArgs e) { sendCount++; Gbytes = new byte[25]; xiaocheCount++; if (xiaocheCount > 256) { xiaocheCount = 1; } quanshuCount++; if (quanshuCount > 3) { quanshuCount = 1; } gongbaotaiCount++; if (gongbaotaiCount > 9) { gongbaotaiCount = 1; } saomiaoyiCount++; if (saomiaoyiCount > 2) { saomiaoyiCount = 1; } billcodepart2++; if (billcodepart2 > 99999) { billcodepart2 = 1; } billcode = billcodepart1 + billcodepart2.ToString("00000"); tip = "-" + "小车:" + xiaocheCount.ToString() + "-" + "圈数:" + quanshuCount.ToString() + "-" + "供包台:" + gongbaotaiCount.ToString() + "-" + "顶扫ID:" + saomiaoyiCount.ToString(); try { Gbytes[0] = 0x00; //小车高位 Gbytes[1] = (byte)Convert.ToInt16(xiaocheCount); //循环 小车低位 Gbytes[2] = (byte)Convert.ToInt16(quanshuCount); //1-3 圈数 Gbytes[3] = (byte)Convert.ToInt16(gongbaotaiCount); //1-9 供包台 Gbytes[4] = (byte)Convert.ToInt16(saomiaoyiCount); //扫描仪 1-2 Gbytes[5] = 0x00; //重量 Gbytes[6] = 0x00; //重量 Gbytes[7] = 0x00; //重量 Gbytes[8] = 0x00; //重量 Gbytes[9] = 0x00; //重量 Gbytes[10] = 0x7c; //分隔符 //11-24 单号 byte[] bytes1 = Encoding.Default.GetBytes(billcode); for (int i = 0; i <= 13; i++) { //Gbytes[11 + i] = (byte)Convert.ToInt16( bytes1[i].ToString("x")); //Gbytes[11 + i] = (byte)Convert.ToInt16(Convert.ToString(bytes1[i], 16)); Gbytes[11 + i] = bytes1[i]; } IntPtr connId = client.ConnectionId; Gbytes = CommonService.MakePLCMessage(Gbytes); // 发送 if (client.Send(Gbytes, Gbytes.Length)) { AddMsg(string.Format("$ ({0}) 发送成功 --> {1}", connId, billcode + tip + "-" + DateTime.Now.ToShortTimeString())); StringBuilder sb = new StringBuilder(); for (int i = 0; i < Gbytes.Length; i++) { sb.Append(" " + Gbytes[i].ToString("x").PadLeft(2, '0')); } AddMsg(sb.ToString()); int temp = Regex.Matches(sb.ToString(), @"0d 0a").Count; lblSend.Text = sendCount.ToString(); } else { AddMsg(string.Format("$ ({0}) 发送失败 --> {1} ({2})", connId, billcode, Gbytes.Length)); } } catch (Exception ex) { AddMsg(string.Format("$ 发送失败 --> 错误信息 ({0})", ex.Message)); } }