啊啊啊 客户端啊 .很简单 几句话啊.. TcpClient c = new TcpClient();
c.Connect(IPAddress.Parse("111.222.33.44"), 5566);
c.Client.Send(new byte[2]{0x01,0x02});
c.Client.Shutdown(SocketShutdown.Both);
c.Client.Close();
c.Close();
c.Connect(IPAddress.Parse("111.222.33.44"), 5566);
c.Client.Send(new byte[2]{0x01,0x02});
c.Client.Shutdown(SocketShutdown.Both);
c.Client.Close();
c.Close();
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.Net.Sockets;
using System.Net;
namespace SmartMobileHttpSocketDemo
{
public partial class Form2 : Form
{ public Form2()
{
InitializeComponent();
button2.Enabled = false; }
byte[] buffer = new byte[1024];
Socket socket;
private void button1_Click(object sender, EventArgs e)
{
try
{
socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Connect(txt_ip.Text, int.Parse(txt_port.Text));
button1.Enabled = false;
button2.Enabled = true;
}
catch (Exception ex)
{
FuncWrite(ex.Message);
return;
}
socket.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveMessage), socket);
}
void ReceiveMessage(IAsyncResult ar)
{
try
{
var socket = ar.AsyncState as Socket;
var length = socket.EndReceive(ar);
byte[] reallData = new byte[length];
Array.Copy(buffer, reallData, length);
FuncWrite("Rece:" + string.Join("-", reallData.Select(d => d.ToString("X2")).ToArray()));
}
catch (Exception ex)
{
FuncWrite(ex.Message);
}
finally
{
socket.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveMessage), socket);
}
} void FuncWrite(object text)
{
this.Invoke(new Action(() => listBox1.Items.Insert(0, text)));
} private void button2_Click(object sender, EventArgs e)
{
var b = textBox3.Text.Split('-').Select(x => Convert.ToByte(x, 16)).ToArray();
socket.Send(b);
FuncWrite("Send:" + textBox3.Text);
} private void button3_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
} private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
{
var SelectedItem = listBox1.SelectedItem;
if (SelectedItem != null)
{
var msg = SelectedItem.ToString().Replace("Send:", "").Replace("Rece:", "");
Clipboard.SetDataObject(msg, false);
}
}
}
}