海康机器人固定扫码枪喜欢使用socket通信是因为:
高效稳定:Socket通信是一种高效稳定的通信方式,能够保证数据传输的可靠性和实时性。
跨平台性:Socket通信是一种跨平台的通信方式,不限制操作系统和硬件平台,方便不同设备之间的通信。
简单易用:Socket通信相对于其他通信方式来说,编程接口相对简单,易于开发和使用。
可扩展性:Socket通信支持多对多的通信模式,可以同时与多个设备进行通信,具有较高的可扩展性。
大数据传输能力:Socket通信支持大数据传输,可以满足基恩士固定扫码枪对于大数据量实时传输的需求。
海康机器人固定扫码枪 默认地址 可手工设置 端口2001
发送指令 start 触发扫码
最新源代码下载---> 源代码快速下载
try
{
int Port = Convert.ToInt32(textPart.Text);
IPAddress IP = IPAddress.Parse((string)textIP.Text);
ClientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
ClientSocket.Connect(new IPEndPoint(IP, Port));
listBox1.Items.Add("连接服务器成功!\r\n");
checkMsg = true;
thread = new Thread(ReceiveMessage);
thread.IsBackground = true;
thread.Start();
button1.Enabled = false;
button2.Enabled = true;
button3.Enabled = true;
}
catch (Exception ex)
{
listBox1.Items.Add("连接服务器失败!\r\n"+ ex.ToString());
return;
}
try
{
if (!IsSocketConnected(ClientSocket)) {
listBox1.Items.Add("连接已经关闭,请重新连接!" );
return;
}
//Thread.Sleep(2000);
listBox1.Items.Add("向服务器发送消息:\r\n"+ textMsg.Text);
string sb = textMsg.Text;
string Client = ClientSocket.RemoteEndPoint.ToString();
string SendMessage = "接收客户端" + Client + "消息:" + DateTime.Now + "\r\n" + sb + "\r\n";
ClientSocket.Send(Encoding.UTF8.GetBytes(sb));
textMsg.Clear();
}
catch (Exception ex)
{
listBox1.Items.Add("服务器可能已经关闭!\r\n");
ClientSocket.Shutdown(SocketShutdown.Both);
ClientSocket.Close();
}
if (comboBox1.Text.Equals(""))
{
MessageBox.Show("请选择接口");
}
if (!serialPort1.IsOpen)
{
setcom(comboBox1.Text);
button1.Enabled = false;
button2.Enabled = true;
string strDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss", DateTimeFormatInfo.InvariantInfo);
listBox1.Items.Add(strDate + " 打开成功: " + serialPort1.PortName + " 成功");
this.comboBox1.Enabled = false;
//serialPort1.Open();
}