啊啊啊 客户端啊 .很简单 几句话啊..            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();

解决方案 »

  1.   

    sorry我这只是发....using System;
    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);
                 }
            }
        }
    }