资源简介
上一个的修正版,加上了好友名提示,用昵称代替以前的socketID
代码片段和文件信息
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();
Random rado = new Random();
txtName.Text += Convert.ToChar(rado.Next(96 122));
}
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 ““);//告诉服务器我是谁!
type = 3;
}
void socket_OnStreamDataAccept(string AccepterID MyTreaty AcceptData)
{
if (AcceptData.Type == 0)//文本
{
string msg = AcceptData.Date + “ “ + AcceptData.Name + “ : “ + System.Text.Encoding.UTF8.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
{
SaveFileDialog sFD = new SaveFileDialog();
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();
AddMs
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-08-03 09:29 socket(修正)\
目录 0 2011-08-01 17:01 socket(修正)\socket\
目录 0 2011-08-04 14:01 socket(修正)\socket\Solution\
目录 0 2011-08-04 13:59 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\
文件 14848 2011-08-05 11:26 socket(修正)\socket\Solution\Client\bin\Debug\Client.exe
文件 34304 2011-08-05 11:26 socket(修正)\socket\Solution\Client\bin\Debug\Client.pdb
文件 14328 2011-08-10 12:02 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
文件 11776 2011-08-05 11:26 socket(修正)\socket\Solution\Client\bin\Debug\Model.dll
文件 32256 2011-08-05 11:26 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
文件 7763 2011-08-04 13:59 socket(修正)\socket\Solution\Client\Form1.cs
文件 7845 2011-08-04 13:52 socket(修正)\socket\Solution\Client\Form1.Designer.cs
文件 5814 2011-08-04 13:52 socket(修正)\socket\Solution\Client\Form1.resx
目录 0 2011-08-01 17:02 socket(修正)\socket\Solution\Client\obj\
目录 0 2011-08-05 11:26 socket(修正)\socket\Solution\Client\obj\Debug\
文件 4821 2011-08-10 12:02 socket(修正)\socket\Solution\Client\obj\Debug\Client.csproj.FileListAbsolute.txt
文件 847 2011-08-04 13:52 socket(修正)\socket\Solution\Client\obj\Debug\Client.csproj.GenerateResource.Cache
文件 14848 2011-08-05 11:26 socket(修正)\socket\Solution\Client\obj\Debug\Client.exe
文件 180 2011-08-05 11:26 socket(修正)\socket\Solution\Client\obj\Debug\Client.Form1.resources
文件 34304 2011-08-05 11:26 socket(修正)\socket\Solution\Client\obj\Debug\Client.pdb
文件 180 2011-08-05 11:26 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个文件信息
- 上一篇:金蝶k3cloudWebAP接口
- 下一篇:完整汉字笔画笔顺数据库201678
相关资源
- winform串口通过SCPI协议与数控电源M8
- C# UDPSocket异步传输文件
- FinsTcp.rar
- (源代码)C#作为上位机,控制51单片
- c#上位机串口通信助手源代码194215
- WPF使用Socket实现客户端服务器通信
- c#写的简单嗅探器(Socket)
- Socket组播通信
- c# socket 异步通信,一个服务器端和多
- C#.net4.0 采用多线程 基于Socket的聊天室
- socket转串口通讯
- C#实现串口通信
- C#TCP服务器和客户端Winform源代码
- C#中利用Socket实现网络语音通信
- C# Socket通讯框架,封装了Client和Serv
- usb hid 通信
- WCF双工通信代码(C#)
- Winform C#Socket异步通信
- C#版的FtpClient客户端Socket实现(可以登
- C#版USB通信编程(接收和发送数据)
- C#实现Socket编程 (异步通讯解决Tcp粘
- C#实现socket通讯
- C#编写的串口数据接收保存
- Sockets实现服务器与多个客户端进行通
- C#和台达PLC通信
- C#通过服务端和GPRS通讯
- c# scoket异步通信代码
- C#UDP通信+文件传输
- C# Socket 分包传送数据
- C#实现简单的Socket文件传输
评论
共有 条评论