资源简介

socket的通信允许发送消息 图片 文件

资源截图

代码片段和文件信息

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 Model;
using System.Net;
using System.IO;
using System.Threading;
namespace Client
{
    public partial class Form1 : Form
    {
        int type = 0;
        public Form1()
        {
            InitializeComponent();
            CheckForIllegalCrossThreadCalls = false;
            IPHostEntry ipe = Dns.GetHostEntry(Dns.GetHostName());
            IPAddress ipa = ipe.AddressList[0];
            txtIp.Text = ipa.ToString();
        }

        private AsySocket socket = null;

        private void button1_Click(object sender EventArgs e)
        {
            //连接
            socket = new AsySocket(“localhost“ 0);
            socket.OnSended += new AsySocketEventHandler(socket_OnSended);

            socket.OnStreamDataAccept += new StreamDataAcceptHandler(socket_OnStreamDataAccept);

            socket.OnClosed += new AsySocketClosedEventHandler(socket_OnClosed);

            socket.linkobject.Connect(txtIp.Text Int32.Parse(txtPort.Text));
            btnConnect.Enabled = false;

            socket.BeginAcceptData();
           // socket.ASend(3 txtName.Text null DateTime.Now ““);
        }

        void socket_OnStreamDataAccept(string AccepterID MyTreaty AcceptData)
        {
            if (AcceptData.Type == 0)//文本
            {
                string msg = AcceptData.Date + “ “ + AcceptData.Name + “ : “ + System.Text.Encoding.Default.GetString(AcceptData.Content).Trim();
                AddMsg(msg);

            }
            else if (AcceptData.Type == 1)
            {
                string msg = AcceptData.Date + “ 收到 “ + AcceptData.Name + “的图片“;
                AddMsg(msg);
                picBox.Image = Image.FromStream(new MemoryStream(AcceptData.Content));
            }
            else
         {
            string msg = AcceptData.Date + “ 收到 “ + AcceptData.Name + “名叫:“ + AcceptData.FileName + “的文件“;
            if (MessageBox.Show(msg + “,是否接收“ “提示“ MessageBoxButtons.OKCancel) == DialogResult.OK)
            {

                try
                {

                    sFD.Filter = AcceptData.FileName + “ | *.“ + Path.GetExtension(AcceptData.FileName);

                    if (sFD.ShowDialog() == DialogResult.OK)
                    {
                        FileStream fs = new FileStream(sFD.FileName FileMode.Create FileAccess.Write);
                        fs.Write(AcceptData.Content 0 Convert.ToInt32(AcceptData.Content.Length));
                        fs.Close();
                        AddMsg(msg);
                    }

                }
                catch (Exception)
                {

                    throw;
                }
            }

            }
        }

        void socket_OnClosed(string SocketID string ErrorMessage

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2011-08-03 09:29  socket\
     目录           0  2011-08-01 17:01  socket\socket\
     目录           0  2011-08-03 13:31  socket\socket\Solution\
     目录           0  2011-08-03 17:16  socket\socket\Solution\Client\
     目录           0  2011-08-01 17:02  socket\socket\Solution\Client\bin\
     目录           0  2011-08-03 16:35  socket\socket\Solution\Client\bin\Debug\
     文件       14336  2011-08-03 17:22  socket\socket\Solution\Client\bin\Debug\Client.exe
     文件       30208  2011-08-03 17:22  socket\socket\Solution\Client\bin\Debug\Client.pdb
     文件       14328  2011-08-04 08:52  socket\socket\Solution\Client\bin\Debug\Client.vshost.exe
     文件         490  2007-07-21 01:33  socket\socket\Solution\Client\bin\Debug\Client.vshost.exe.manifest
     文件       11264  2011-08-03 17:22  socket\socket\Solution\Client\bin\Debug\Model.dll
     文件       26112  2011-08-03 17:22  socket\socket\Solution\Client\bin\Debug\Model.pdb
     文件       90112  2011-05-31 15:44  socket\socket\Solution\Client\bin\Debug\RichTextBoxExtended.dll
     文件        4198  2011-08-03 13:41  socket\socket\Solution\Client\Client.csproj
     文件        7900  2011-08-03 17:16  socket\socket\Solution\Client\Form1.cs
     文件        7967  2011-08-03 16:49  socket\socket\Solution\Client\Form1.Designer.cs
     文件        6005  2011-08-03 16:49  socket\socket\Solution\Client\Form1.resx
     目录           0  2011-08-01 17:02  socket\socket\Solution\Client\obj\
     目录           0  2011-08-03 17:22  socket\socket\Solution\Client\obj\Debug\
     文件        3428  2011-08-04 08:52  socket\socket\Solution\Client\obj\Debug\Client.csproj.FileListAbsolute.txt
     文件         847  2011-08-03 16:49  socket\socket\Solution\Client\obj\Debug\Client.csproj.GenerateResource.Cache
     文件       14336  2011-08-03 17:22  socket\socket\Solution\Client\obj\Debug\Client.exe
     文件         180  2011-08-03 17:22  socket\socket\Solution\Client\obj\Debug\Client.Form1.resources
     文件       30208  2011-08-03 17:22  socket\socket\Solution\Client\obj\Debug\Client.pdb
     文件         180  2011-08-03 17:22  socket\socket\Solution\Client\obj\Debug\Client.Properties.Resources.resources
     目录           0  2011-08-01 17:19  socket\socket\Solution\Client\obj\Debug\Refactor\
     文件        6258  2011-08-03 15:59  socket\socket\Solution\Client\obj\Debug\ResolveAssemblyReference.cache
     目录           0  2011-08-01 17:02  socket\socket\Solution\Client\obj\Debug\TempPE\
     文件         487  2011-08-01 17:02  socket\socket\Solution\Client\Program.cs
     目录           0  2011-08-01 17:02  socket\socket\Solution\Client\Properties\
     文件        1354  2011-08-01 17:02  socket\socket\Solution\Client\Properties\AssemblyInfo.cs
............此处省略57个文件信息

评论

共有 条评论